From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Justin M. Forbes To: git-commits@fedoraproject.org Subject: [rpms/kernel] rawhide: kernel-7.3.0-0.rc0.260818g0f23d56f17fd.3 Date: Tue, 18 Aug 2026 17:23:28 GMT Message-ID: <178707380806.1.11344486868774232206.rpms-kernel-d15383d2d6a1@fedoraproject.org> List-ID: X-Git-Repo: rpms/kernel X-Git-Branch: rawhide X-Git-Rev: d15383d2d6a1642304901e2a2428dfa31317ab3f ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMva2VybmVsCiAgICAgICAgICAgIEJyYW5jaCA6IHJhd2hpZGUKICAgICAgICAg ICAgQ29tbWl0IDogZDE1MzgzZDJkNmExNjQyMzA0OTAxZTJhMjQyOGRmYTMxMzE3YWIzZgogICAg ICAgICAgICBBdXRob3IgOiBKdXN0aW4gTS4gRm9yYmVzIDxqZm9yYmVzQGZlZG9yYXByb2plY3Qu b3JnPgogICAgICAgICAgICBEYXRlICAgOiAyMDI2LTA4LTE4VDExOjIzOjExLTA2OjAwCiAgICAg ICAgICAgIFN0YXRzICA6ICs4MDM5Ly00NzMwIGluIDQ3IGZpbGUocykKICAgICAgICAgICAgVVJM ICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9rZXJuZWwvYy9kMTUzODNk MmQ2YTE2NDIzMDQ5MDFlMmEyNDI4ZGZhMzEzMTdhYjNmP2JyYW5jaD1yYXdoaWRlCgogICAgICAg ICAgICBMb2c6CiAgICAgICAgICAgIGtlcm5lbC03LjMuMC0wLnJjMC4yNjA4MThnMGYyM2Q1NmYx N2ZkLjMKCiogVHVlIEF1ZyAxOCAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1A ZmVkb3JhcHJvamVjdC5vcmc+IFs3LjMuMC0wLnJjMC4wZjIzZDU2ZjE3ZmQuM10KLSBhdXRvbW90 aXZlOiBlbmFibGUgSFVHRVRMQkZTIHRvIHdvcmthcm91bmQgYnVpbGQgZXJyb3IgKFNjb3R0IFdl YXZlcikKUmVzb2x2ZXM6CgpTaWduZWQtb2ZmLWJ5OiBKdXN0aW4gTS4gRm9yYmVzIDxqZm9yYmVz QGZlZG9yYXByb2plY3Qub3JnPgoKLS0tCmRpZmYgLS1naXQgYS9NYWtlZmlsZS5yaGVsdmVyIGIv TWFrZWZpbGUucmhlbHZlcgppbmRleCBiOWI0ZjM1Li5kYmRiOTlhIDEwMDY0NAotLS0gYS9NYWtl ZmlsZS5yaGVsdmVyCisrKyBiL01ha2VmaWxlLnJoZWx2ZXIKQEAgLTEyLDcgKzEyLDcgQEAgUkhF TF9NSU5PUiA9IDk5CiAjCiAjIFVzZSB0aGlzIHNwb3QgdG8gYXZvaWQgZnV0dXJlIG1lcmdlIGNv bmZsaWN0cy4KICMgRG8gbm90IHRyaW0gdGhpcyBjb21tZW50LgotUkhFTF9SRUxFQVNFID0gNjEK K1JIRUxfUkVMRUFTRSA9IDMKIAogIwogIyBSSEVMX1JFQkFTRV9OVU0KCmRpZmYgLS1naXQgYS9Q YXRjaGxpc3QuY2hhbmdlbG9nIGIvUGF0Y2hsaXN0LmNoYW5nZWxvZwppbmRleCA4YzBlOTczLi4z YjM0ODNjIDEwMDY0NAotLS0gYS9QYXRjaGxpc3QuY2hhbmdlbG9nCisrKyBiL1BhdGNobGlzdC5j aGFuZ2Vsb2cKQEAgLTEsNDg2ICsxLDQ1MCBAQAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNzVjODM0M2Y2NmRlZjlkNmFiMTRjZDU5ZjQ2NGM4NzI1 OTMyOThkZgotIDc1YzgzNDNmNjZkZWY5ZDZhYjE0Y2Q1OWY0NjRjODcyNTkzMjk4ZGYgUmV2ZXJ0 ICJJbnB1dDogcm1pNCAtIHJlbW92ZSB0aGUgbmVlZCBmb3IgYXJ0aWZpY2lhbCBJUlEgaW4gY2Fz ZSBvZiBISUQiCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC82YTc0NGIzZjNkZjI1YzgwMmU4NjRiMjk2NDczYWRjNjc1MTU4NmMyCisgNmE3NDRiM2Yz ZGYyNWM4MDJlODY0YjI5NjQ3M2FkYzY3NTE1ODZjMiBbcmVkaGF0XSBkcml2ZXJzL3Njc2kvc2Qu YzogY2xlYW51cAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC85MWY3NTg5ZGRjOThkNTM3ODBiMzdkZDY3OTYyYzljZDYyMjUxYTYxCi0gOTFmNzU4 OWRkYzk4ZDUzNzgwYjM3ZGQ2Nzk2MmM5Y2Q2MjI1MWE2MSBSZXZlcnQgImNyeXB0bzogcm5nIC0g T3ZlcnJpZGUgZHJpdmVycy9jaGFyL3JhbmRvbSBpbiBGSVBTIG1vZGUiCitodHRwczovL2dpdGxh Yi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC85ZDM1MzZjNTgxMjk2NmNkMWFl MDQ4NTgxNzM4OGFhZmNhNWNlNDA4CisgOWQzNTM2YzU4MTI5NjZjZDFhZTA0ODU4MTczODhhYWZj YTVjZTQwOCByZWRoYXQ6IHJoX2ZsYWdzOiBtYXJrICFDT05GSUdfUkhFTF9ESUZGRVJFTkNFUyBz dHVicyBhcyBzdGF0aWMgaW5saW5lCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0L2FmOTNiNGQ4MWRkZTVhNTJmMGY4NmNlNDM1YzMxNGU4MzlkMDNj YTUKLSBhZjkzYjRkODFkZGU1YTUyZjBmODZjZTQzNWMzMTRlODM5ZDAzY2E1IFJldmVydCAiY3J5 cHRvOiBybmcgLSBFbnN1cmUgc3Rkcm5nIGlzIHRlc3RlZCBiZWZvcmUgdXNlci1zcGFjZSBzdGFy dHMiCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC81 YzE3NjlkN2FmYTY1MDc3ODQ4Mzk0OWRkMTNhYWFhN2JjYTM1NTIzCisgNWMxNzY5ZDdhZmE2NTA3 Nzg0ODM5NDlkZDEzYWFhYTdiY2EzNTUyMyByZWRoYXQ6IEFkZCBERU5ZTElTVC5yaGVsIHRvIEJQ RiBzZWxmdGVzdHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsv LS9jb21taXQvYWFjNWRmYjk3YzIzNGM0OTkzYTYxYjFlNGNiZDRkZGIzYTMyYjY3MAotIGFhYzVk ZmI5N2MyMzRjNDk5M2E2MWIxZTRjYmQ0ZGRiM2EzMmI2NzAgUmV2ZXJ0ICJjcnlwdG86IHJuZyAt IEZpeCBleHRybmcgRUZBVUxUIGhhbmRsaW5nIgoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMTg1MmZhMTk2NjgzMjY0Njc4MzY3ZmE1N2U2NDdjOTc1 YjUzNGY1OAorIDE4NTJmYTE5NjY4MzI2NDY3ODM2N2ZhNTdlNjQ3Yzk3NWI1MzRmNTggRml4IHVw IHJlYmFzZSB0eXBvIGluIGRyaXZlcnMvcGNpL3F1aXJrcy5jCiAKLWh0dHBzOi8vZ2l0bGFiLmNv bS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzcxN2E3MTM0NmFmOGVmMGQ1MzgwMzU5 OWY0Yzc2YzQzZmQ3NjVmYzMKLSA3MTdhNzEzNDZhZjhlZjBkNTM4MDM1OTlmNGM3NmM0M2ZkNzY1 ZmMzIFJldmVydCAiQ29ycmVjdCBtYW51YWwgbWVyZ2UgZXJyb3IgaW4gY3J5cHRvL3JuZy5jIgor aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvODZkOWMz NmViY2FjZGI1OWQ2NDk5ZGMxMmU3ZTQ5MDlkNTYwOGM2MworIDg2ZDljMzZlYmNhY2RiNTlkNjQ5 OWRjMTJlN2U0OTA5ZDU2MDhjNjMgcmhfbWVzc2FnZS5oOiB1cGRhdGUgc3VwcG9ydCBzdGF0dXMg b2YgbWx4NSBkZXZpY2VzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwt YXJrLy0vY29tbWl0L2VjYzRlMmE2NzViODI1OWNjM2EzZjZhZmUwODUwMGM0Yzg2OWVhYjQKLSBl Y2M0ZTJhNjc1YjgyNTljYzNhM2Y2YWZlMDg1MDBjNGM4NjllYWI0IFJldmVydCAiRml4IHVwIHJl YmFzZSBpc3N1ZXMgd2l0aCBybmcuYyIKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0L2Y2NDkwYWM1Nzc0MWFkNjUwMTQwZjFjZDllMmM2YTFhZmRjOTIy MWIKKyBmNjQ5MGFjNTc3NDFhZDY1MDE0MGYxY2Q5ZTJjNmExYWZkYzkyMjFiIGVmaTogRml4IHN3 YXBwZWQgYXJndW1lbnRzIHRvIGJzZWFyY2goKSBpbiBlZmlfc3RhdHVzX3RvXyooKQogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9hYjk3MDhkN2M2 MzM2OWU0OWUwZmZkMDQ2NDQ0M2RhZjk5Nzc4MjQ0Ci0gYWI5NzA4ZDdjNjMzNjllNDllMGZmZDA0 NjQ0NDNkYWY5OTc3ODI0NCBbcmVkaGF0XSBkcml2ZXJzL3Njc2kvc2QuYzogY2xlYW51cAoraHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZjQ4MWM4Yjcx ZGU2OWFhMWRlMmQzYTU5ZjIyZDNkODE2YmIzOGZhNworIGY0ODFjOGI3MWRlNjlhYTFkZTJkM2E1 OWYyMmQzZDgxNmJiMzhmYTcgUmV2ZXJ0ICJSZW1vdmluZyBPYnNvbGV0ZSBoYmEgcGNpLWlkcyBm cm9tIHJoZWw4IgogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC8yYThiNzNiNDRhMWUxN2E1MWE2NTRkMGM5ODQyMTgzNThhODE2Njc2Ci0gMmE4Yjcz YjQ0YTFlMTdhNTFhNjU0ZDBjOTg0MjE4MzU4YTgxNjY3NiBGaXggdXAgcmViYXNlIGlzc3VlcyB3 aXRoIHJuZy5jCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC8zMTc3MTZjZWY0MTI1NmViMjY4MWUwNDkxOGU0N2RhNDI2ZTY0YjlhCisgMzE3NzE2Y2Vm NDEyNTZlYjI2ODFlMDQ5MThlNDdkYTQyNmU2NGI5YSByaF9tZXNzYWdlcy5oOiBhZGQgbWlzc2lu ZyBscGZjIGRldmljZXMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvNTEyZWVkYzY0OGU0ZmQzODExYzgyYjE1YzA3ZGM2MjJlNGNlZWE2YwotIDUx MmVlZGM2NDhlNGZkMzgxMWM4MmIxNWMwN2RjNjIyZTRjZWVhNmMgcmVkaGF0OiByaF9mbGFnczog bWFyayAhQ09ORklHX1JIRUxfRElGRkVSRU5DRVMgc3R1YnMgYXMgc3RhdGljIGlubGluZQoraHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYzQ5ZmE2NmE0 ZGNjOWIwMGMwOGU1YTBkNzVjY2YzNjI0NGNiMDBhNAorIGM0OWZhNjZhNGRjYzliMDBjMDhlNWEw ZDc1Y2NmMzYyNDRjYjAwYTQga2VybmVsOiBleHRlbmQgcmhfd2FpdmVkIHRvIGNvcGUgYmV0dGVy IHdpdGggdGhlIENWRSBtaXRpZ2F0aW9ucyBjYXNlCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2kt cHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzVmM2E1ZjQ0OGIzYzFjZjM1YzZjOWQzZDE4MmFj MGRmMDA1MjAwYTkKLSA1ZjNhNWY0NDhiM2MxY2YzNWM2YzlkM2QxODJhYzBkZjAwNTIwMGE5IHJl ZGhhdDogQWRkIERFTllMSVNULnJoZWwgdG8gQlBGIHNlbGZ0ZXN0cworaHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzBkNzMxODE2MmY1OGM3ZjI5MGRk MzlhNTFhNzdlYmFhMjA4ZTg3ZQorIDMwZDczMTgxNjJmNThjN2YyOTBkZDM5YTUxYTc3ZWJhYTIw OGU4N2UgcmhfbWVzc2FnZXMuaDogYWRkIG1pc3NpbmcgYWFjcmFpZCBkZXZpY2UKIAotaHR0cHM6 Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZGE5MGNmZDA3ZDJm ZmFhMTg1YjQ0YWY1NTc5ZTIxZDcxNmQ0NGM0NgotIGRhOTBjZmQwN2QyZmZhYTE4NWI0NGFmNTU3 OWUyMWQ3MTZkNDRjNDYgQ29ycmVjdCBtYW51YWwgbWVyZ2UgZXJyb3IgaW4gY3J5cHRvL3JuZy5j CitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9jMTY1 YWRkYmRiMTA3ZjA0YTExODQ5ZjRmYTg3MDc1MDk5MmVkNDUyCisgYzE2NWFkZGJkYjEwN2YwNGEx MTg0OWY0ZmE4NzA3NTA5OTJlZDQ1MiByaF9tZXNzYWdlcy5oOiB1cGRhdGUgdW5tYWludGFpbmVk IGRyaXZlcnMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9j b21taXQvNjk3MjJhODc1YTFhZDViNWJkM2NmYmVlOGUwNzQ0ZjQ0YjlhMmQ3MQotIDY5NzIyYTg3 NWExYWQ1YjViZDNjZmJlZThlMDc0NGY0NGI5YTJkNzEgRml4IHVwIHJlYmFzZSB0eXBvIGluIGRy aXZlcnMvcGNpL3F1aXJrcy5jCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVs LWFyay8tL2NvbW1pdC8xMGY1OTJlZGM2YjRjZTMwY2E0YjJlZGQ0MTIxOThhZmRkMmI2Y2Q2Cisg MTBmNTkyZWRjNmI0Y2UzMGNhNGIyZWRkNDEyMTk4YWZkZDJiNmNkNiBhcm02NDogYWRkIGVhcmx5 IGxvY2tkb3duIGZvciBzZWN1cmUgYm9vdAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC80ZjRmOTRmNGI0ZmVmMGY0ZjJkN2MyNWFhNDNmZTQwOGY2 N2JmNDViCi0gNGY0Zjk0ZjRiNGZlZjBmNGYyZDdjMjVhYTQzZmU0MDhmNjdiZjQ1YiByaF9tZXNz YWdlLmg6IHVwZGF0ZSBzdXBwb3J0IHN0YXR1cyBvZiBtbHg1IGRldmljZXMKK2h0dHBzOi8vZ2l0 bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2Y4ZjQxYTdkZDYxN2FmYzZh ODhlZDFlYWY2OWRmYjBiZDkxYTEwZDgKKyBmOGY0MWE3ZGQ2MTdhZmM2YTg4ZWQxZWFmNjlkZmIw YmQ5MWExMGQ4IGVmaTogcGFzcyBzZWN1cmUgYm9vdCBtb2RlIHRvIGtlcm5lbCBwcm9wZXIKIAot aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMWZjNDlh OGU2MGI0NGRmN2MwNTNmMzdiODFjMDM4ZTE1MmRjOGMxMQotIDFmYzQ5YThlNjBiNDRkZjdjMDUz ZjM3YjgxYzAzOGUxNTJkYzhjMTEgZWZpOiBGaXggc3dhcHBlZCBhcmd1bWVudHMgdG8gYnNlYXJj aCgpIGluIGVmaV9zdGF0dXNfdG9fKigpCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qv a2VybmVsLWFyay8tL2NvbW1pdC9hM2NjOGE1NDU0NTQ1NDRhNjJhNTM0MjcwYmE4YzQ4MTRmZTJm NGMwCisgYTNjYzhhNTQ1NDU0NTQ0YTYyYTUzNDI3MGJhOGM0ODE0ZmUyZjRjMCBzZWxmdGVzdHMv YnBmOiBSZW1vdmUga3N5bXNfd2Vha19sc2tlbCB0ZXN0CiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9j a2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2NiNjk3MzYzMGMxMTY3MzJmOTRjNTdkMDRk Yzc3NTFlMjU1MDI5MTkKLSBjYjY5NzM2MzBjMTE2NzMyZjk0YzU3ZDA0ZGM3NzUxZTI1NTAyOTE5 IFJldmVydCAiUmVtb3ZpbmcgT2Jzb2xldGUgaGJhIHBjaS1pZHMgZnJvbSByaGVsOCIKK2h0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2ZhOGJjNTRlYzM4 ZTI4ZWFlMGRmOTlhN2M2OGI1OTI2NTBmMjBkNjMKKyBmYThiYzU0ZWMzOGUyOGVhZTBkZjk5YTdj NjhiNTkyNjUwZjIwZDYzIFNpbXBsaWZ5IGluY2x1ZGUgTWFrZWZpbGUucmhlbHZlcgogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8wYWQ4YzAxZjBk NzlhNTY1MmM2YzRmMDk4OGExYmExYTkwMDg0OTAwCi0gMGFkOGMwMWYwZDc5YTU2NTJjNmM0ZjA5 ODhhMWJhMWE5MDA4NDkwMCByaF9tZXNzYWdlcy5oOiBhZGQgbWlzc2luZyBscGZjIGRldmljZXMK K2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzJkY2I3 MDdlMTAxNWU0YjViODkzMTJhYjExNjkwMThiYWE2ZmU0YWQKKyAyZGNiNzA3ZTEwMTVlNGI1Yjg5 MzEyYWIxMTY5MDE4YmFhNmZlNGFkIHJlZGhhdDogbWFrZSBFTkFCTEVfV0VSUk9SIGFsc28gZW5h YmxlIE9CSlRPT0xfV0VSUk9SCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJu ZWwtYXJrLy0vY29tbWl0L2NjMGU4OTZiYTVlMTY3NTNmZTBkMDcxODMwNzEzYzZlY2I4NTI5NzYK LSBjYzBlODk2YmE1ZTE2NzUzZmUwZDA3MTgzMDcxM2M2ZWNiODUyOTc2IGtlcm5lbDogZXh0ZW5k IHJoX3dhaXZlZCB0byBjb3BlIGJldHRlciB3aXRoIHRoZSBDVkUgbWl0aWdhdGlvbnMgY2FzZQor aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMTlkYmNk MTEyNmJiZjUzZGM4OGY0NDMwOTFlZWI0M2E2OTliYWY5ZgorIDE5ZGJjZDExMjZiYmY1M2RjODhm NDQzMDkxZWViNDNhNjk5YmFmOWYgbWFpbi5jOiBmaXggaW5pdGNhbGwgYmxhY2tsaXN0ZWQKIAot aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzM0YzY0 ZmI5OTIyNzNjYzU2ZDRhNTNiODliOGU4ZWY3YzJkYmZjYwotIDMzNGM2NGZiOTkyMjczY2M1NmQ0 YTUzYjg5YjhlOGVmN2MyZGJmY2MgcmhfbWVzc2FnZXMuaDogYWRkIG1pc3NpbmcgYWFjcmFpZCBk ZXZpY2UKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 L2MwZTQ4YzU5NjQwMGM1YWEwNGMyMmEyZjJmY2YwOGI5ZGVlMjM3ODkKKyBjMGU0OGM1OTY0MDBj NWFhMDRjMjJhMmYyZmNmMDhiOWRlZTIzNzg5IGFyY2gveDg2L2tlcm5lbC9zZXR1cC5jOiBmaXgg cmhfY2hlY2tfc3VwcG9ydGVkCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJu ZWwtYXJrLy0vY29tbWl0L2JhZjBmY2IyYmQyMzZiMDBhYmI1NTQ1YTM1ZmU1ODg4Y2FjOWE2MmMK LSBiYWYwZmNiMmJkMjM2YjAwYWJiNTU0NWEzNWZlNTg4OGNhYzlhNjJjIHJoX21lc3NhZ2VzLmg6 IHVwZGF0ZSB1bm1haW50YWluZWQgZHJpdmVycworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYzk4Njc2MzA4NWIzOWM0ZWE1NjJmMDQxNTk2NTI1NjAx YTM0ZWM1NgorIGM5ODY3NjMwODViMzljNGVhNTYyZjA0MTU5NjUyNTYwMWEzNGVjNTYgZWZpLGxv Y2tkb3duOiBmaXgga2VybmVsIGxvY2tkb3duIG9uIFNlY3VyZSBCb290CiAKLWh0dHBzOi8vZ2l0 bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2NiNjM1N2FmMDMwOGIyNDEw OTJlMjcxYTFhMDFmNmVjZWFkYjkzOWUKLSBjYjYzNTdhZjAzMDhiMjQxMDkyZTI3MWExYTAxZjZl Y2VhZGI5MzllIGFybTY0OiBhZGQgZWFybHkgbG9ja2Rvd24gZm9yIHNlY3VyZSBib290CitodHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8zYWQzMDE1ZDc0 ODVhNWE0YmU0NzEzZjAxYWQ5NGFmZTJmNzM1YWJjCisgM2FkMzAxNWQ3NDg1YTVhNGJlNDcxM2Yw MWFkOTRhZmUyZjczNWFiYyByZWRoYXQ6IGF1dG9tb3RpdmU6IGRlZmluZSBDT05GSUdfUkhfQVVU T01PVElWRQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9lNzk1YTlhMTAzZjY2YjlkZTE2ODM3YjU4OTE4Y2E5ZGZkMDE1ZTQ5Ci0gZTc5NWE5YTEw M2Y2NmI5ZGUxNjgzN2I1ODkxOGNhOWRmZDAxNWU0OSBlZmk6IHBhc3Mgc2VjdXJlIGJvb3QgbW9k ZSB0byBrZXJuZWwgcHJvcGVyCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVs LWFyay8tL2NvbW1pdC8xMjk4OGU3NTYzZDNlNjY1NzIzMjg4YTEzZmM1NWFlYTFlNGQwZmZmCisg MTI5ODhlNzU2M2QzZTY2NTcyMzI4OGExM2ZjNTVhZWExZTRkMGZmZiByZWRoYXQ6IGZpeCBtb2R1 bGVzLm9yZGVyIHRhcmdldAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVs LWFyay8tL2NvbW1pdC9mODdmNjE0MGNiNzBiMzY0NzliZjI0ZTNjYzI1ZmQ3ZGNhODhhMDBkCi0g Zjg3ZjYxNDBjYjcwYjM2NDc5YmYyNGUzY2MyNWZkN2RjYTg4YTAwZCBzZWxmdGVzdHMvYnBmOiBS ZW1vdmUga3N5bXNfd2Vha19sc2tlbCB0ZXN0CitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC9jOGY4NWEyNGJiZjEzM2FlZDI0M2NmY2NiYTBmN2I5NzAz YWQ3MTUxCisgYzhmODVhMjRiYmYxMzNhZWQyNDNjZmNjYmEwZjdiOTcwM2FkNzE1MSBbcmVkaGF0 XSByaF9tZXNzYWdlcy5oOiBkcml2ZXIgYW5kIGRldmljZSB1cGRhdGVzCiAKLWh0dHBzOi8vZ2l0 bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2Y1N2Q0NDg3ZjQ0ZTYxYzNi N2E1ODVlMzhiMjVkNjI4M2JmOGM4NzEKLSBmNTdkNDQ4N2Y0NGU2MWMzYjdhNTg1ZTM4YjI1ZDYy ODNiZjhjODcxIFNpbXBsaWZ5IGluY2x1ZGUgTWFrZWZpbGUucmhlbHZlcgoraHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYjExZWEzMDcwYTcyMjdhODJm OWYxM2JkM2VmOTg3MjhkZTNlOTZiZgorIGIxMWVhMzA3MGE3MjI3YTgyZjlmMTNiZDNlZjk4NzI4 ZGUzZTk2YmYgY3J5cHRvOiBzaWcgLSBEaXNhYmxlIHNpZ25pbmcKIAotaHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvM2E2YzBjN2I5YTMyYmIzMWQ3NjRk MGI5MDc4MzBkY2QwYWQwNmY2YQotIDNhNmMwYzdiOWEzMmJiMzFkNzY0ZDBiOTA3ODMwZGNkMGFk MDZmNmEgcmVkaGF0OiBtYWtlIEVOQUJMRV9XRVJST1IgYWxzbyBlbmFibGUgT0JKVE9PTF9XRVJS T1IKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0Lzg3 YTkzY2Y4Y2M1ODdkZjg5OThhYTI4MjRhMTBkNjkzYWViOTRlYWQKKyA4N2E5M2NmOGNjNTg3ZGY4 OTk4YWEyODI0YTEwZDY5M2FlYjk0ZWFkIFtyZWRoYXRdIHJoX21lc3NhZ2VzLmg6IE1hcmsgQmx1 ZUZpZWxkLTQgYXMgZGlzYWJsZWQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvZDAyYmJmNzE2MDYwN2ZhMmE0NWFhY2JlYzc3OTYzNmZlYzIwZDBm ZQotIGQwMmJiZjcxNjA2MDdmYTJhNDVhYWNiZWM3Nzk2MzZmZWMyMGQwZmUgbWFpbi5jOiBmaXgg aW5pdGNhbGwgYmxhY2tsaXN0ZWQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJu ZWwtYXJrLy0vY29tbWl0LzkyYzJkMGE4ZDQwNjI4MzU0NmFlMzA1NDIyODA1MzI0MWFkYjI4MTAK KyA5MmMyZDBhOGQ0MDYyODM1NDZhZTMwNTQyMjgwNTMyNDFhZGIyODEwIFVwZGF0ZSB0aGUgUkhF TF9ESUZGRVJFTkNFUyBoZWxwIHN0cmluZwogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC82ODgzZDA4YWNiNTVhMDg0NjgzODU1NTEyYzkxMWM3OWYw NTViZGM2Ci0gNjg4M2QwOGFjYjU1YTA4NDY4Mzg1NTUxMmM5MTFjNzlmMDU1YmRjNiBhcmNoL3g4 Ni9rZXJuZWwvc2V0dXAuYzogZml4IHJoX2NoZWNrX3N1cHBvcnRlZAoraHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZmRmOTBhNTlmOTAwY2Q3NjZkZTc0 YjFhZDIyNjJkY2RhMDg0ZmJjYgorIGZkZjkwYTU5ZjkwMGNkNzY2ZGU3NGIxYWQyMjYyZGNkYTA4 NGZiY2IgcmVkaGF0OiBpbmNsdWRlIHJlc29sdmVfYnRmaWRzIGluIGtlcm5lbC1kZXZlbAogCi1o dHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9hYjAzZWFh N2ZmMTZiNzk0Y2E0MGIzMGVhYWJkY2NjYTA3MjM4MjYxCi0gYWIwM2VhYTdmZjE2Yjc5NGNhNDBi MzBlYWFiZGNjY2EwNzIzODI2MSBlZmksbG9ja2Rvd246IGZpeCBrZXJuZWwgbG9ja2Rvd24gb24g U2VjdXJlIEJvb3QKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0LzUyNmM2YzFiMjA2MWExZWI5NzhiMTMxYTU5ZWEyNDg1YjM4NGFhODYKKyA1MjZjNmMx YjIwNjFhMWViOTc4YjEzMWE1OWVhMjQ4NWIzODRhYTg2IHJlZGhhdDogd29ya2Fyb3VuZCBDS0kg Y3Jvc3MgY29tcGlsYXRpb24gZm9yIHNjcmlwdHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1w cm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMTZmMjA4Y2RiNzdjYzJiNTNlZmQ5MWVjZjJmMjNm NTkxMWIzODRlZQotIDE2ZjIwOGNkYjc3Y2MyYjUzZWZkOTFlY2YyZjIzZjU5MTFiMzg0ZWUgcmVk aGF0OiBhdXRvbW90aXZlOiBkZWZpbmUgQ09ORklHX1JIX0FVVE9NT1RJVkUKK2h0dHBzOi8vZ2l0 bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzM2MWVkYmNkODEzYjM5NzFj NjM2MmUzMDA2OGNlNGYzZmY0ZGFlZGIKKyAzNjFlZGJjZDgxM2IzOTcxYzYzNjJlMzAwNjhjZTRm M2ZmNGRhZWRiIGNyeXB0bzogYWtjaXBoZXIgLSBEaXNhYmxlIHNpZ25pbmcgYW5kIGRlY3J5cHRp b24KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQv N2MzYzE1NDUwMjViMmZkMGMzM2IzZmNmMzhmNTI2ZTE0OWZiNjczMQotIDdjM2MxNTQ1MDI1YjJm ZDBjMzNiM2ZjZjM4ZjUyNmUxNDlmYjY3MzEgcmVkaGF0OiBmaXggbW9kdWxlcy5vcmRlciB0YXJn ZXQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzUy ZWY1ZTA3MTliZGIyNzZhYTZiYzYxNDRkZTQ1MzYzNGY2NzMyNGMKKyA1MmVmNWUwNzE5YmRiMjc2 YWE2YmM2MTQ0ZGU0NTM2MzRmNjczMjRjIGNyeXB0bzogZGggLSBpbXBsZW1lbnQgRklQUyBQQ1QK IAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZWU5 ZGI0ODFmNzEyZjUyYThmMmYwOGEzY2E0YjY1ZDdkY2U1NTAxMQotIGVlOWRiNDgxZjcxMmY1MmE4 ZjJmMDhhM2NhNGI2NWQ3ZGNlNTUwMTEgW3JlZGhhdF0gcmhfbWVzc2FnZXMuaDogZHJpdmVyIGFu ZCBkZXZpY2UgdXBkYXRlcworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvZGI1MTE4YTIyOGIyYzg1ZjUxZTc4ZmI4OTRhNjI4MThmNzQyMGQ0OAorIGRi NTExOGEyMjhiMmM4NWY1MWU3OGZiODk0YTYyODE4Zjc0MjBkNDggY3J5cHRvOiBlY2RoIC0gZGlz YWxsb3cgcGxhaW4gImVjZGgiIHVzYWdlIGluIEZJUFMgbW9kZQogCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83NjdlODlkYzEyMzkzYTliZTdlYzE0 YWM1NzhjZTEwMGE0MjZmOGY0Ci0gNzY3ZTg5ZGMxMjM5M2E5YmU3ZWMxNGFjNTc4Y2UxMDBhNDI2 ZjhmNCBjcnlwdG86IHJuZyAtIEZpeCBleHRybmcgRUZBVUxUIGhhbmRsaW5nCitodHRwczovL2dp dGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8zNTcwODM1ZjhiNTQ5NjA4 ZmU2YzZiYzZjOWE2ZDE4MjlhZDAwNzVhCisgMzU3MDgzNWY4YjU0OTYwOGZlNmM2YmM2YzlhNmQx ODI5YWQwMDc1YSBjcnlwdG86IHNlcWl2IC0gZmxhZyBpbnN0YW50aWF0aW9ucyBhcyBGSVBTIGNv bXBsaWFudAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9mMmUyYmM1YWQyMmIzOWU5NzRkNWNjMGI5NzNmMTc1YjA5YTM5NWMxCi0gZjJlMmJjNWFk MjJiMzllOTc0ZDVjYzBiOTczZjE3NWIwOWEzOTVjMSBjcnlwdG86IHNpZyAtIERpc2FibGUgc2ln bmluZworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQv NWI0MjI4YzQ3Mzk2MmI3Nzc5ZjZkNmVkZDZlNjZhOTY1M2RmYzQ1ZgorIDViNDIyOGM0NzM5NjJi Nzc3OWY2ZDZlZGQ2ZTY2YTk2NTNkZmM0NWYgW2tlcm5lbF0gYnBmOiBzZXQgZGVmYXVsdCB2YWx1 ZSBmb3IgYnBmX2ppdF9oYXJkZW4KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvZDc0ZWQ1ZjU5NmU0ZWFkNThiYzMzYTVjODA0N2M1ODhhOWVjNzY3 MQotIGQ3NGVkNWY1OTZlNGVhZDU4YmMzM2E1YzgwNDdjNTg4YTllYzc2NzEgY3J5cHRvOiBybmcg LSBFbnN1cmUgc3Rkcm5nIGlzIHRlc3RlZCBiZWZvcmUgdXNlci1zcGFjZSBzdGFydHMKK2h0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzA0MTgyYzMyZGZh ZWYyMmU3MTIyNTc4ZDUzMzAwMTQwMGM5YzEyNzUKKyAwNDE4MmMzMmRmYWVmMjJlNzEyMjU3OGQ1 MzMwMDE0MDBjOWMxMjc1IG5vdCB1cHN0cmVhbTogRGlzYWJsZSB2ZHNvIGdldHJhbmRvbSB3aGVu IEZJUFMgaXMgZW5hYmxlZAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVs LWFyay8tL2NvbW1pdC9mZTEwMWFjNzgxNTdmYWE3MDY2Njc0MjNiYjNmMzI0MjdjZjc3YWMxCi0g ZmUxMDFhYzc4MTU3ZmFhNzA2NjY3NDIzYmIzZjMyNDI3Y2Y3N2FjMSBbcmVkaGF0XSByaF9tZXNz YWdlcy5oOiBNYXJrIEJsdWVGaWVsZC00IGFzIGRpc2FibGVkCitodHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8xZjA2YjRiMjJmMDlhMmIzZDQ4MGVmYzNi NjIyNDFjOTJlZmRjYzk5CisgMWYwNmI0YjIyZjA5YTJiM2Q0ODBlZmMzYjYyMjQxYzkyZWZkY2M5 OSBBZGQgc3VwcG9ydCB0byByaF93YWl2ZWQgY21kbGluZSBib290IHBhcmFtZXRlcgogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC80YWIzZWE5YTY2 Mjc4NTA3MWE2YWVhMDdiMjc4YmVmZjA3MjNkN2QzCi0gNGFiM2VhOWE2NjI3ODUwNzFhNmFlYTA3 YjI3OGJlZmYwNzIzZDdkMyBVcGRhdGUgdGhlIFJIRUxfRElGRkVSRU5DRVMgaGVscCBzdHJpbmcK K2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzViZWVk OTZmNDk2OTQwN2Q5MzNkNDliZTlkYWEwNWQ5MTU5MzMwY2QKKyA1YmVlZDk2ZjQ5Njk0MDdkOTMz ZDQ5YmU5ZGFhMDVkOTE1OTMzMGNkIHJoX2ZsYWdzOiBmaXggZmFpbGVkIHdoZW4gcmVnaXN0ZXJf c3lzY3RsX3N6IHJoX2ZsYWdzX3RhYmxlIHRvIGtlcm5lbAogCi1odHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kNGVmMzYzMGMwYWFkOTg1YjI1MTNhYzll YWZkMWZmOWE3YzE0Y2UwCi0gZDRlZjM2MzBjMGFhZDk4NWIyNTEzYWM5ZWFmZDFmZjlhN2MxNGNl MCByZWRoYXQ6IGluY2x1ZGUgcmVzb2x2ZV9idGZpZHMgaW4ga2VybmVsLWRldmVsCitodHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC85ODQ5YjQzM2JhNTg5 MjY2MjI4ZGVjZWY0NTZkZGIwM2UzMTZjMjc2CisgOTg0OWI0MzNiYTU4OTI2NjIyOGRlY2VmNDU2 ZGRiMDNlMzE2YzI3NiBbcmVkaGF0XSByaF9mbGFnczogY29uc3RpZnkgdGhlIGN0bF90YWJsZSBh cmd1bWVudCBvZiBwcm9jX2hhbmRsZXIKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0 L2tlcm5lbC1hcmsvLS9jb21taXQvYTMzOTRhOGQ2MzAwZGU1ZGQyYmE0NjM1NmUyNDI5ZmFmZTdm NmVjNgotIGEzMzk0YThkNjMwMGRlNWRkMmJhNDYzNTZlMjQyOWZhZmU3ZjZlYzYgcmVkaGF0OiB3 b3JrYXJvdW5kIENLSSBjcm9zcyBjb21waWxhdGlvbiBmb3Igc2NyaXB0cworaHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZWZhMTA5YjZjMzY4ODVhNzYz MmYxZGY4OTExZDAyZjhjMDdlY2FhZgorIGVmYTEwOWI2YzM2ODg1YTc2MzJmMWRmODkxMWQwMmY4 YzA3ZWNhYWYgcmVkaGF0OiByaF9mbGFnczogZGVjbGFyZSBwcm9wZXIgc3RhdGljIG1ldGhvZHMg d2hlbiAhQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1w cm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvOTIyZTY0YTZhNTFmMjQ2MTdhMTFhYTEzMTI4ZjE0 OGEwYTNjNGRlNwotIDkyMmU2NGE2YTUxZjI0NjE3YTExYWExMzEyOGYxNDhhMGEzYzRkZTcgY3J5 cHRvOiBha2NpcGhlciAtIERpc2FibGUgc2lnbmluZyBhbmQgZGVjcnlwdGlvbgoraHR0cHM6Ly9n aXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMjZjZTZkYWI2YzJhOGU1 ZTdlYmYzYWRiNGFhNTUxOTVmNTVlYzZlNworIDI2Y2U2ZGFiNmMyYThlNWU3ZWJmM2FkYjRhYTU1 MTk1ZjU1ZWM2ZTcgcmVkaGF0OiBtYWtlIGJueDJ4eCBkcml2ZXJzIHVubWFpbnRhaW5lZCBpbiBy aGVsLTEwCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0Lzg1MDcwYzkyMzAwNWY0NDk1ZmRjNmRiYTQyN2E1M2JlYzAzM2EyMWMKLSA4NTA3MGM5MjMw MDVmNDQ5NWZkYzZkYmE0MjdhNTNiZWMwMzNhMjFjIGNyeXB0bzogZGggLSBpbXBsZW1lbnQgRklQ UyBQQ1QKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzMyOGI0MTM5YTNmMWM0MDM3NzZhNTE4YjdjZWFiMjFkOTJkMDhmNDgKKyAzMjhiNDEzOWEzZjFj NDAzNzc2YTUxOGI3Y2VhYjIxZDkyZDA4ZjQ4IHJoX2ZsYWdzOiBSZW5hbWUgcmhfZmVhdHVyZXMg dG8gcmhfZmxhZ3MKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsv LS9jb21taXQvNzQ0ZWU5NTYwODA3ZDdjNTY4ZjYwZDU3MWY0MTQwNjAxZWVjMjAzNgotIDc0NGVl OTU2MDgwN2Q3YzU2OGY2MGQ1NzFmNDE0MDYwMWVlYzIwMzYgY3J5cHRvOiBlY2RoIC0gZGlzYWxs b3cgcGxhaW4gImVjZGgiIHVzYWdlIGluIEZJUFMgbW9kZQoraHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZDU5YTFkODU1ZWVhNjE2NmY2NGYzN2I3YWU2 ZmZlZGYzNTExYzRhOQorIGQ1OWExZDg1NWVlYTYxNjZmNjRmMzdiN2FlNmZmZWRmMzUxMWM0YTkg a2VybmVsOiByaF9mZWF0dXJlczogZml4IHJlYWRpbmcgZW1wdHkgZmVhdHVyZSBsaXN0IGZyb20g L3Byb2MKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21t aXQvYzAyNmE0NjZjNjc3NGY4N2UwN2ZjNDAxNTlmOTQ1OTRlYTA4ZmJhOQotIGMwMjZhNDY2YzY3 NzRmODdlMDdmYzQwMTU5Zjk0NTk0ZWEwOGZiYTkgY3J5cHRvOiBzZXFpdiAtIGZsYWcgaW5zdGFu dGlhdGlvbnMgYXMgRklQUyBjb21wbGlhbnQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0LzMwM2MwMjJmMWFhYTBjZDU3ZTc0MjQ4NWUwZmUxOTFiNzJh NDc0YWYKKyAzMDNjMDIyZjFhYWEwY2Q1N2U3NDI0ODVlMGZlMTkxYjcyYTQ3NGFmIHJoX2ZlYXR1 cmVzOiBtb3ZlIHJoX2ZlYXR1cmVzIGVudHJ5IHRvIHN5cy9rZXJuZWwKIAotaHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZjI2NmRlNGI2ZDIxYmMzZGNl ZGM3ZDg4NDdmZGNkOTc5Mjk5YjY1ZgotIGYyNjZkZTRiNmQyMWJjM2RjZWRjN2Q4ODQ3ZmRjZDk3 OTI5OWI2NWYgW2tlcm5lbF0gYnBmOiBzZXQgZGVmYXVsdCB2YWx1ZSBmb3IgYnBmX2ppdF9oYXJk ZW4KK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0Lzc4 M2RiYzc2YjZmNDk3YWY4NzgyMzcxOGRkNGVkY2YxZWE4M2Y4ODYKKyA3ODNkYmM3NmI2ZjQ5N2Fm ODc4MjM3MThkZDRlZGNmMWVhODNmODg2IHJoX2ZlYXR1cmVzOiBjb252ZXJ0IHRvIGF0b21pYyBh bGxvY2F0aW9uCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0L2ExM2Q2MTVkNWJlM2RiYmIzOWY2NjMwZGQwNWNlZTUyZmQyMDljYmUKLSBhMTNkNjE1 ZDViZTNkYmJiMzlmNjYzMGRkMDVjZWU1MmZkMjA5Y2JlIG5vdCB1cHN0cmVhbTogRGlzYWJsZSB2 ZHNvIGdldHJhbmRvbSB3aGVuIEZJUFMgaXMgZW5hYmxlZAoraHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMWNhYTk5YmUwNGEyNGI0OWU5ZDI1ZDU4ZTU5 ZjgzNDY3MTAxN2M5MgorIDFjYWE5OWJlMDRhMjRiNDllOWQyNWQ1OGU1OWY4MzQ2NzEwMTdjOTIg YWRkIHJoX2ZlYXR1cmVzIHRvIC9wcm9jCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0LzY1ZjQyYjllYTM5NWNlZTc2NDc2M2VlNjYzZDFiZjAwZjhk MDFhMWQKLSA2NWY0MmI5ZWEzOTVjZWU3NjQ3NjNlZTY2M2QxYmYwMGY4ZDAxYTFkIEFkZCBzdXBw b3J0IHRvIHJoX3dhaXZlZCBjbWRsaW5lIGJvb3QgcGFyYW1ldGVyCitodHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8wZTkzMGU0MTRhZjhiZjFjYzg2MWIz MDI4YjYwZGMwMjkyNjNmMWRhCisgMGU5MzBlNDE0YWY4YmYxY2M4NjFiMzAyOGI2MGRjMDI5MjYz ZjFkYSBhZGQgc3VwcG9ydCBmb3IgcmhfZmVhdHVyZXMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZGU0MWRjM2Y5MzYxZDUzNTcxMzgyMmQ1MzMy N2QyOTRlYTc5NWY1NAotIGRlNDFkYzNmOTM2MWQ1MzU3MTM4MjJkNTMzMjdkMjk0ZWE3OTVmNTQg cmhfZmxhZ3M6IGZpeCBmYWlsZWQgd2hlbiByZWdpc3Rlcl9zeXNjdGxfc3ogcmhfZmxhZ3NfdGFi bGUgdG8ga2VybmVsCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC8zYTU4MjM1MDNmZDg0ZDEwZjhkZGM5NTg3ZTUyOWIwNWIyNTBmZDUxCisgM2E1ODIz NTAzZmQ4NGQxMGY4ZGRjOTU4N2U1MjliMDViMjUwZmQ1MSBbcmVkaGF0XSBQQ0k6IEZpeCBwY2lf cmhfY2hlY2tfc3RhdHVzKCkgY2FsbCBzZW1hbnRpY3MKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYTMxYTYzNjMyZjM0ZmQ5MDQ3ZGQ3MTBlZDhk N2EyNzdjYTdhM2JlNQotIGEzMWE2MzYzMmYzNGZkOTA0N2RkNzEwZWQ4ZDdhMjc3Y2E3YTNiZTUg W3JlZGhhdF0gcmhfZmxhZ3M6IGNvbnN0aWZ5IHRoZSBjdGxfdGFibGUgYXJndW1lbnQgb2YgcHJv Y19oYW5kbGVyCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9jZjcwYzcwMTU0MmMwMjQ5MmY3M2U5NTYwMTY1ZGI1MDMxM2I1ZjY3CisgY2Y3MGM3MDE1 NDJjMDI0OTJmNzNlOTU2MDE2NWRiNTAzMTNiNWY2NyBzY3NpOiBzZDogY29uZGl0aW9uIHByb2Jl X3R5cGUgdW5kZXIgUkhFTF9ESUZGRVJFTkNFUwogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXBy b2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8wODBjMDk5OGFmNmNlMDMxMDlkOTdkZTM0ZTE5ZWQ0 YTc0YTMwNWM1Ci0gMDgwYzA5OThhZjZjZTAzMTA5ZDk3ZGUzNGUxOWVkNGE3NGEzMDVjNSByZWRo YXQ6IHJoX2ZsYWdzOiBkZWNsYXJlIHByb3BlciBzdGF0aWMgbWV0aG9kcyB3aGVuICFDT05GSUdf UkhFTF9ESUZGRVJFTkNFUworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvMDZhZmJiZDJjN2I2OGVkMWM1YjM4MmJmMjExMGVhNWEzOGQ5YTg5ZAorIDA2 YWZiYmQyYzdiNjhlZDFjNWIzODJiZjIxMTBlYTVhMzhkOWE4OWQgW3JlZGhhdF0gcmhfbWVzc2Fn ZXMuaDogbWFyayBtbHg1IG9uIEJsdWVmaWVsZC0zIGFzIHVubWFpbnRhaW5lZAogCi1odHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC82YjNhN2RiZDVhZWVk MmIwMDY5OTUyN2Y1ZGZjZmNmNzEwMGM5MjMxCi0gNmIzYTdkYmQ1YWVlZDJiMDA2OTk1MjdmNWRm Y2ZjZjcxMDBjOTIzMSByZWRoYXQ6IG1ha2UgYm54Mnh4IGRyaXZlcnMgdW5tYWludGFpbmVkIGlu IHJoZWwtMTAKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0LzMxOTFjZjBmOGVmOTk2MDhiMzg5MWNjZWE4ZGU4YTc0OTQ5NjQyZjUKKyAzMTkxY2YwZjhl Zjk5NjA4YjM4OTFjY2VhOGRlOGE3NDk0OTY0MmY1IFtyZWRoYXRdIHJoX21lc3NhZ2VzLmg6IGlu aXRpYWwgZHJpdmVyIGFuZCBkZXZpY2UgbGlzdHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1w cm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNzY2ODRlODI2YmYxZjEwMDNiY2U0NGQ4YmNmOGRi ZTE4MWIyMzFlMQotIDc2Njg0ZTgyNmJmMWYxMDAzYmNlNDRkOGJjZjhkYmUxODFiMjMxZTEgcmhf ZmxhZ3M6IFJlbmFtZSByaF9mZWF0dXJlcyB0byByaF9mbGFncworaHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYzVhNTUwMDUxYTFlYjNlYjBhMzczNGM0 NzcxYzMwNjZhZjM3OWYzNworIGM1YTU1MDA1MWExZWIzZWIwYTM3MzRjNDc3MWMzMDY2YWYzNzlm MzcgYXJjaC94ODY6IEZpeCBYU0FWRSBjaGVjayBmb3IgeDg2XzY0LXYyIGNoZWNrCiAKLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2I4NDg0M2E4Y2M3 ODFlM2NkM2RmYzJmNDliYzczYzQ2MmNjZTZlNzUKLSBiODQ4NDNhOGNjNzgxZTNjZDNkZmMyZjQ5 YmM3M2M0NjJjY2U2ZTc1IGtlcm5lbDogcmhfZmVhdHVyZXM6IGZpeCByZWFkaW5nIGVtcHR5IGZl YXR1cmUgbGlzdCBmcm9tIC9wcm9jCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2Vy bmVsLWFyay8tL2NvbW1pdC85MjRhNzhmNzZhMjljMmU0YmJhZTc3ZWQ2NjAwMDI1YTE3MzJjYTY4 CisgOTI0YTc4Zjc2YTI5YzJlNGJiYWU3N2VkNjYwMDAyNWExNzMyY2E2OCBhcmNoL3g4Ni9rZXJu ZWwvc2V0dXAuYzogZml4dXAgcmhfY2hlY2tfc3VwcG9ydGVkCiAKLWh0dHBzOi8vZ2l0bGFiLmNv bS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzIyZWVkYjhmNzczZGE1NzQ2NzkxYWVj ZDEyNWRjMzUxZmVkZjYxMzcKLSAyMmVlZGI4Zjc3M2RhNTc0Njc5MWFlY2QxMjVkYzM1MWZlZGY2 MTM3IHJoX2ZlYXR1cmVzOiBtb3ZlIHJoX2ZlYXR1cmVzIGVudHJ5IHRvIHN5cy9rZXJuZWwKK2h0 dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzJkNTE5ZGRm ZjIzZGMyNWYyOTllZjgxNTZmMmE1Mzg4MjYxYjYwNDQKKyAyZDUxOWRkZmYyM2RjMjVmMjk5ZWY4 MTU2ZjJhNTM4ODI2MWI2MDQ0IGxzbTogdXBkYXRlIHNlY3VyaXR5X2xvY2tfa2VybmVsX2Rvd24K IAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMDIy MzViYzQ0OTZkNjQ4NzdlMjY3MTVlMzBiMjJkYmFiOWZmZjk1NAotIDAyMjM1YmM0NDk2ZDY0ODc3 ZTI2NzE1ZTMwYjIyZGJhYjlmZmY5NTQgcmhfZmVhdHVyZXM6IGNvbnZlcnQgdG8gYXRvbWljIGFs bG9jYXRpb24KK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0LzRlM2EzMmNjMDRlODNiZmEzYjkyZDE4ODVhYjFmYTlhN2JlMzZhZTYKKyA0ZTNhMzJjYzA0 ZTgzYmZhM2I5MmQxODg1YWIxZmE5YTdiZTM2YWU2IGFyY2gveDg2OiBtYXJrIHg4Nl82NC12MSBh bmQgeDg2XzY0LXYyIHByb2Nlc3NvcnMgYXMgZGVwcmVjYXRlZAogCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9jNGFjMjQwYzRhNDViZjhiMTVmNzVm MWRkMjczNDAxNTA4MGU3NTUxCi0gYzRhYzI0MGM0YTQ1YmY4YjE1Zjc1ZjFkZDI3MzQwMTUwODBl NzU1MSBhZGQgcmhfZmVhdHVyZXMgdG8gL3Byb2MKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJv amVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzZjYmY3YjAxZDk0ODRkMGRhYmU5NDNiOGM5NDI5ZWM1 MDI1Y2Q2YzgKKyA2Y2JmN2IwMWQ5NDg0ZDBkYWJlOTQzYjhjOTQyOWVjNTAyNWNkNmM4IHJlZGhh dDoga0FCSTogYWRkIG1pc3NpbmcgUkhfS0FCSV9TSVpFX0FMSUdOX0NIRUNLUyBLY29uZmlnIG9w dGlvbgogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC9mMzM3NDI3NTM5ZGFiNjljYjQ3NzQzNjQ2ODE1NDJlMTE0OGZmOGFjCi0gZjMzNzQyNzUzOWRh YjY5Y2I0Nzc0MzY0NjgxNTQyZTExNDhmZjhhYyBhZGQgc3VwcG9ydCBmb3IgcmhfZmVhdHVyZXMK K2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzhmNGQx Nzk2ODk2ZjgwNTJmZjI4OGU1NDMwMjIxNGYzNmM2MTEzMmMKKyA4ZjRkMTc5Njg5NmY4MDUyZmYy ODhlNTQzMDIyMTRmMzZjNjExMzJjIHJlZGhhdDogcmhfa2FiaTogaW50cm9kdWNlIFJIX0tBQklf RVhDTFVERV9XSVRIX1NJWkUKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5l bC1hcmsvLS9jb21taXQvZWZjZDM5YzU1OTdhNTBlN2QzMTYxMDQ4ZDM5OTM2Mzc3ZmZjNWUxMAot IGVmY2QzOWM1NTk3YTUwZTdkMzE2MTA0OGQzOTkzNjM3N2ZmYzVlMTAgW3JlZGhhdF0gUENJOiBG aXggcGNpX3JoX2NoZWNrX3N0YXR1cygpIGNhbGwgc2VtYW50aWNzCitodHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kOWQyNzc1N2UzMThlNTAwM2JhNjJl ODliNzBkNzhlNjk1MmZiMzkxCisgZDlkMjc3NTdlMzE4ZTUwMDNiYTYyZTg5YjcwZDc4ZTY5NTJm YjM5MSByZWRoYXQ6IHJoX2thYmk6IG1vdmUgc2VtaWNvbG9uIGluc2lkZSBfX1JIX0tBQklfQ0hF Q0tfU0laRQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC85ZmY5OTQ5MzFlNTViYzljMDNjODljZGEyZDgyNTg0NTIxN2IxNzVjCi0gOWZmOTk0OTMx ZTU1YmM5YzAzYzg5Y2RhMmQ4MjU4NDUyMTdiMTc1YyBzY3NpOiBzZDogY29uZGl0aW9uIHByb2Jl X3R5cGUgdW5kZXIgUkhFTF9ESUZGRVJFTkNFUworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzZkNWUyNmU2NjZjZDlmZjE3MTYyYTZkNDQ1YzIwOWE2 NmUyOTZkYworIDM2ZDVlMjZlNjY2Y2Q5ZmYxNzE2MmE2ZDQ0NWMyMDlhNjZlMjk2ZGMgcmFuZG9t OiByZXBsYWNlIGltcG9ydF9zaW5nbGVfcmFuZ2UoKSB3aXRoIGltcG9ydF91YnVmKCkKIAotaHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvOWZkOGJhNTAw YjA5YmZmNjZmMTI1Y2M0MDIyNDg1YzVlNTUxOWQ2ZQotIDlmZDhiYTUwMGIwOWJmZjY2ZjEyNWNj NDAyMjQ4NWM1ZTU1MTlkNmUgW3JlZGhhdF0gcmhfbWVzc2FnZXMuaDogbWFyayBtbHg1IG9uIEJs dWVmaWVsZC0zIGFzIHVubWFpbnRhaW5lZAoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0 L2tlcm5lbC1hcmsvLS9jb21taXQvODE4MjUyM2Q4YTY0YWVmNTNkZjk2NDA1MmEzODI2NzU4NzBk YjYwZgorIDgxODI1MjNkOGE2NGFlZjUzZGY5NjQwNTJhMzgyNjc1ODcwZGI2MGYgZXh0NDogTWFy ayBtb3VudGluZyBmcy12ZXJpdHkgZmlsZXN5c3RlbXMgYXMgdGVjaC1wcmV2aWV3CiAKLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzY2NGUwYTllOWU3 ZTI3OTQxZjIzZGE3YmM5Y2Q0ZmUyNDkwZjRiNGQKLSA2NjRlMGE5ZTllN2UyNzk0MWYyM2RhN2Jj OWNkNGZlMjQ5MGY0YjRkIFtyZWRoYXRdIHJoX21lc3NhZ2VzLmg6IGluaXRpYWwgZHJpdmVyIGFu ZCBkZXZpY2UgbGlzdHMKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJr Ly0vY29tbWl0L2VmYTM0MjJlMzFjNWI5Mjg1MzBlYzljMDkyMjE4N2U3YmNiNjljMWEKKyBlZmEz NDIyZTMxYzViOTI4NTMwZWM5YzA5MjIxODdlN2JjYjY5YzFhIGVyb2ZzOiBBZGQgdGVjaCBwcmV2 aWV3IG1hcmtlcnMgYXQgbW91bnQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvOGJmMzA0Njc5YzE4OWZjOWVlMTFjNDIwYjA2Y2Q0OTE2OTA3MjQy NQotIDhiZjMwNDY3OWMxODlmYzllZTExYzQyMGIwNmNkNDkxNjkwNzI0MjUgYXJjaC94ODY6IEZp eCBYU0FWRSBjaGVjayBmb3IgeDg2XzY0LXYyIGNoZWNrCitodHRwczovL2dpdGxhYi5jb20vY2tp LXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC85ZTI1MzA3NjZiMThlY2FiMDk2YWEzZmE3YTc2 MzdiOGRmYjUzZGIwCisgOWUyNTMwNzY2YjE4ZWNhYjA5NmFhM2ZhN2E3NjM3YjhkZmI1M2RiMCBr ZXJuZWwvcmhfbWVzc2FnZXMuYzogTWFyayBmdW5jdGlvbnMgYXMgcG9zc2libHkgdW51c2VkCiAK LWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzBjYjU1 Zjk0NTMwMzE0Mzc4NThkNGQ1ZjI4MDY2YTk0YWFhZjBkYjEKLSAwY2I1NWY5NDUzMDMxNDM3ODU4 ZDRkNWYyODA2NmE5NGFhYWYwZGIxIGFyY2gveDg2L2tlcm5lbC9zZXR1cC5jOiBmaXh1cCByaF9j aGVja19zdXBwb3J0ZWQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJr Ly0vY29tbWl0LzQwODYyNDNlNWNmNGNjOTc2ZTE1YjEyZmJhODFlNWJhNzYyZjY5MjcKKyA0MDg2 MjQzZTVjZjRjYzk3NmUxNWIxMmZiYTgxZTViYTc2MmY2OTI3IHJhbmRvbTogQWRkIGhvb2sgdG8g b3ZlcnJpZGUgZGV2aWNlIHJlYWRzIGFuZCBnZXRyYW5kb20oMikKIAotaHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvY2FiZDNhMWM3NTA3YWQzMzYzYzFh NjJmZTNjOWRjMTVjNzFmYWU4OAotIGNhYmQzYTFjNzUwN2FkMzM2M2MxYTYyZmUzYzlkYzE1Yzcx ZmFlODggbHNtOiB1cGRhdGUgc2VjdXJpdHlfbG9ja19rZXJuZWxfZG93bgoraHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvM2M5YzJlZWUwY2M1NTcyZDZi NzAzYWNiMzcxZmQwNDUwNTY0ZjBkZQorIDNjOWMyZWVlMGNjNTU3MmQ2YjcwM2FjYjM3MWZkMDQ1 MDU2NGYwZGUgW3JlZGhhdF0ga2VybmVsL3JoX21lc3NhZ2VzLmM6IG1vdmUgaGFyZHdhcmUgdGFi bGVzIHRvIHJoX21lc3NhZ2VzLmgKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvMDVmYmQ4NjI4NGFmOTAyMTEyNzg4MDFkZmFhMDM4MmZjNjg2NjUx MgotIDA1ZmJkODYyODRhZjkwMjExMjc4ODAxZGZhYTAzODJmYzY4NjY1MTIgYXJjaC94ODY6IG1h cmsgeDg2XzY0LXYxIGFuZCB4ODZfNjQtdjIgcHJvY2Vzc29ycyBhcyBkZXByZWNhdGVkCitodHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8wZTQ3ZTk2N2Y1 NGEyMzRkNGFlNmQzM2E4ZGJkOGE0N2IxOWZiOGFmCisgMGU0N2U5NjdmNTRhMjM0ZDRhZTZkMzNh OGRiZDhhNDdiMTlmYjhhZiBbcmVkaGF0XSBrZXJuZWwvcmhfbWVzc2FnZXMuYzogV2lyZSB1cCBu ZXcgY2FsbHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9j b21taXQvZmRhOTRlZmU5OTQ1OTExZmY5OTg0YjZiZGVkNDYwMjk4OTljMjI2MAotIGZkYTk0ZWZl OTk0NTkxMWZmOTk4NGI2YmRlZDQ2MDI5ODk5YzIyNjAgcmVkaGF0OiBrQUJJOiBhZGQgbWlzc2lu ZyBSSF9LQUJJX1NJWkVfQUxJR05fQ0hFQ0tTIEtjb25maWcgb3B0aW9uCitodHRwczovL2dpdGxh Yi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9jODRkNjBhNWJmMzQ3YzJlOGRi YjcwNzljODgxMzZkM2FmMzIwMTZiCisgYzg0ZDYwYTViZjM0N2MyZThkYmI3MDc5Yzg4MTM2ZDNh ZjMyMDE2YiBbcmVkaGF0XSBkcml2ZXJzL3BjaTogVXBkYXRlIHJoX21lc3NhZ2VzLmMKIAotaHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMGJmMWJiYzdk Mjg4NWYyYjVmOTNhMzFiZjkzMjNiNDBkOGRhMzIxYwotIDBiZjFiYmM3ZDI4ODVmMmI1ZjkzYTMx YmY5MzIzYjQwZDhkYTMyMWMgcmVkaGF0OiByaF9rYWJpOiBpbnRyb2R1Y2UgUkhfS0FCSV9FWENM VURFX1dJVEhfU0laRQoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsv LS9jb21taXQvMDRkYWMwMzFlN2ViYzMzYzQ3ZWZlNmY5NjE4NGM1Yjc2ZWExYjkzNAorIDA0ZGFj MDMxZTdlYmMzM2M0N2VmZTZmOTYxODRjNWI3NmVhMWI5MzQgW3JlZGhhdF0gZHJpdmVycy9wY2k6 IFJlbW92ZSBSSEVMLW9ubHkgcGNpX2h3XyooKSBmdW5jdGlvbnMKIAotaHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYTVjOWIzNGRmOWE2ODI5NTY5YjAx N2Q3ZWQ5Mjg1ZTJjZDcyNGNmOQotIGE1YzliMzRkZjlhNjgyOTU2OWIwMTdkN2VkOTI4NWUyY2Q3 MjRjZjkgcmVkaGF0OiByaF9rYWJpOiBtb3ZlIHNlbWljb2xvbiBpbnNpZGUgX19SSF9LQUJJX0NI RUNLX1NJWkUKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0L2I5MzM5NzdmMjhiNDE0YzRmOGVhNjNjZjQyNjFkMGM3Y2NkYjc5ZDIKKyBiOTMzOTc3ZjI4 YjQxNGM0ZjhlYTYzY2Y0MjYxZDBjN2NjZGI3OWQyIHNjc2k6IHNkOiBBZGQgInByb2JlX3R5cGUi IG1vZHVsZSBwYXJhbWV0ZXIgdG8gYWxsb3cgc3luY2hyb25vdXMgcHJvYmluZwogCi1odHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8yNDZlNzdlYTg2NWQ0 YmVjNmU4NDc0ZjAyMjRmMjQyODIwNGI1M2U0Ci0gMjQ2ZTc3ZWE4NjVkNGJlYzZlODQ3NGYwMjI0 ZjI0MjgyMDRiNTNlNCByYW5kb206IHJlcGxhY2UgaW1wb3J0X3NpbmdsZV9yYW5nZSgpIHdpdGgg aW1wb3J0X3VidWYoKQoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsv LS9jb21taXQvZmY3YjNhNzI0YzY0NmJlZmM4NjkxMTA5MzgyY2Y5ZWNkZTMwODZmOAorIGZmN2Iz YTcyNGM2NDZiZWZjODY5MTEwOTM4MmNmOWVjZGUzMDg2ZjggUmV2ZXJ0ICJSZW1vdmUgRVhQRVJU IGZyb20gQVJDSF9GT1JDRV9NQVhfT1JERVIgZm9yIGFhcmNoNjQiCiAKLWh0dHBzOi8vZ2l0bGFi LmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzIxNThmODE0NTIyNTU1YjY3NWI1 YjdjMDBlZjVhOWY5NWQwYjE1NzQKLSAyMTU4ZjgxNDUyMjU1NWI2NzViNWI3YzAwZWY1YTlmOTVk MGIxNTc0IGV4dDQ6IE1hcmsgbW91bnRpbmcgZnMtdmVyaXR5IGZpbGVzeXN0ZW1zIGFzIHRlY2gt cHJldmlldworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21t aXQvZDM3MzRlOWE2NTA1YzliMTUxNGU5YjA4NjExYzEzMDU4M2M3NWMzZQorIGQzNzM0ZTlhNjUw NWM5YjE1MTRlOWIwODYxMWMxMzA1ODNjNzVjM2Uga2VybmVsL3JoX21lc3NhZ2VzLmM6IEFub3Ro ZXIgZ2NjMTIgd2FybmluZyBvbiByZWR1bmRhbnQgTlVMTCB0ZXN0CiAKLWh0dHBzOi8vZ2l0bGFi LmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzU3OWFjMGU1ZTU1OTYxZjkyMDcw NDhjYjQyYjkwNjkxMjA3MjA4ZDkKLSA1NzlhYzBlNWU1NTk2MWY5MjA3MDQ4Y2I0MmI5MDY5MTIw NzIwOGQ5IGVyb2ZzOiBBZGQgdGVjaCBwcmV2aWV3IG1hcmtlcnMgYXQgbW91bnQKK2h0dHBzOi8v Z2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2UwZWQ3NjI5Nzk0ZmZm ZGExZmVhNTAxNjFhZGI3YzExOTYzYWFhOGYKKyBlMGVkNzYyOTc5NGZmZmRhMWZlYTUwMTYxYWRi N2MxMTk2M2FhYThmIEVuYWJsZSBJT19VUklORyBmb3IgUkhFTAogCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83OWQxMmUzZTU2ZTUzNjE5ZGUzNmVh NzI1Y2EyM2NmYzg3OTIzMmNjCi0gNzlkMTJlM2U1NmU1MzYxOWRlMzZlYTcyNWNhMjNjZmM4Nzky MzJjYyBrZXJuZWwvcmhfbWVzc2FnZXMuYzogTWFyayBmdW5jdGlvbnMgYXMgcG9zc2libHkgdW51 c2VkCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9k NTE2MTY4ZTFkNzA5ZmNkZTdkMGViZjUzOTViZTUwYTllYTU3NjU0CisgZDUxNjE2OGUxZDcwOWZj ZGU3ZDBlYmY1Mzk1YmU1MGE5ZWE1NzY1NCBSZW1vdmUgRVhQRVJUIGZyb20gQVJDSF9GT1JDRV9N QVhfT1JERVIgZm9yIGFhcmNoNjQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvZmQ2YzEyMzdlMDQ4YzU2YTM5MjMxMTU2MzFkMzAzNDhiYjFlMGNl MQotIGZkNmMxMjM3ZTA0OGM1NmEzOTIzMTE1NjMxZDMwMzQ4YmIxZTBjZTEgY3J5cHRvOiBybmcg LSBPdmVycmlkZSBkcml2ZXJzL2NoYXIvcmFuZG9tIGluIEZJUFMgbW9kZQoraHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZGY1MDU0MGIzMDNmYTgzYWEz MGUyM2FhNWRjNmFmZWQzMDVhOTUwZAorIGRmNTA1NDBiMzAzZmE4M2FhMzBlMjNhYTVkYzZhZmVk MzA1YTk1MGQgcmVkaGF0OiB2ZXJzaW9uIHR3byBvZiBNYWtlZmlsZS5yaGVsdmVyIHR3ZWFrcwog Ci1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kZDA4 NDYzNGZjNDg0NDU2MDliOGI2NjdiYThjYjE0MDg4YTJhNzM4Ci0gZGQwODQ2MzRmYzQ4NDQ1NjA5 YjhiNjY3YmE4Y2IxNDA4OGEyYTczOCByYW5kb206IEFkZCBob29rIHRvIG92ZXJyaWRlIGRldmlj ZSByZWFkcyBhbmQgZ2V0cmFuZG9tKDIpCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qv a2VybmVsLWFyay8tL2NvbW1pdC83NmQ2YzMwNmIwMDdkMzA0NDc0ODQ5ZTRiNTRjYTI0MzIzMDE2 ZDAwCisgNzZkNmMzMDZiMDA3ZDMwNDQ3NDg0OWU0YjU0Y2EyNDMyMzAxNmQwMCByZWRoYXQ6ICBh ZGFwdCB0byB1cHN0cmVhbSBNYWtlZmlsZSBjaGFuZ2UKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvM2Y0MWNlYjFmMTQzM2YzZjBkODRjZDZlNTZh MjkzYjY4ZWMzNTc3ZAotIDNmNDFjZWIxZjE0MzNmM2YwZDg0Y2Q2ZTU2YTI5M2I2OGVjMzU3N2Qg W3JlZGhhdF0ga2VybmVsL3JoX21lc3NhZ2VzLmM6IG1vdmUgaGFyZHdhcmUgdGFibGVzIHRvIHJo X21lc3NhZ2VzLmgKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0L2MzZWZmMDlhZTE5MTdlN2JkNDEzYTc4NTM3NjBhOWIwNjJkMWYxMzQKKyBjM2VmZjA5 YWUxOTE3ZTdiZDQxM2E3ODUzNzYwYTliMDYyZDFmMTM0IGtlcm5lbC9yaF9tZXNzYWdlcy5jOiBn Y2MxMiB3YXJuaW5nIG9uIHJlZHVuZGFudCBOVUxMIHRlc3QKIAotaHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzJmYTQ2NzZhMTAxN2UxNjQyNzI3YjUx NWE0NTYzMGE3YmQwZTU5YgotIDMyZmE0Njc2YTEwMTdlMTY0MjcyN2I1MTVhNDU2MzBhN2JkMGU1 OWIgW3JlZGhhdF0ga2VybmVsL3JoX21lc3NhZ2VzLmM6IFdpcmUgdXAgbmV3IGNhbGxzCitodHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC80OWYyZTIzMzA4 ZWU3NzMyNTkzZjU4YjZmYTMwZDdhOTc0NzBiNWExCisgNDlmMmUyMzMwOGVlNzczMjU5M2Y1OGI2 ZmEzMGQ3YTk3NDcwYjVhMSBDaGFuZ2UgYWNwaV9idXNfZ2V0X2FjcGlfZGV2aWNlIHRvIGFjcGlf Z2V0X2FjcGlfZGV2CiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJr Ly0vY29tbWl0L2ZhNmQxNmI5YWMzYWNlYzZmYmEwNDdhODI3ZTNhNTkxODA5YWUyZDgKLSBmYTZk MTZiOWFjM2FjZWM2ZmJhMDQ3YTgyN2UzYTU5MTgwOWFlMmQ4IFtyZWRoYXRdIGRyaXZlcnMvcGNp OiBVcGRhdGUgcmhfbWVzc2FnZXMuYworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvYWFlOWNiNmM3NDQzNDhmNDBiZjJmYzk1NTM5YTViNjZlMDQwZjgx NAorIGFhZTljYjZjNzQ0MzQ4ZjQwYmYyZmM5NTUzOWE1YjY2ZTA0MGY4MTQgQVJLOiBSZW1vdmUg Y29kZSBtYXJraW5nIGRldmljZXMgdW5tYWludGFpbmVkCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9j a2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzExMmU0Nzg2MmUwODlkYmNjMDhiNDAzY2Nl ZDM5Njk1ZTFiNzc0YWIKLSAxMTJlNDc4NjJlMDg5ZGJjYzA4YjQwM2NjZWQzOTY5NWUxYjc3NGFi IFtyZWRoYXRdIGRyaXZlcnMvcGNpOiBSZW1vdmUgUkhFTC1vbmx5IHBjaV9od18qKCkgZnVuY3Rp b25zCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8w NzEyOTZjNzI2Y2U5MjA3NzI0Y2Y3ZDI3NWYxZjEzZDMxM2UzMzM3CisgMDcxMjk2YzcyNmNlOTIw NzcyNGNmN2QyNzVmMWYxM2QzMTNlMzMzNyByaF9tZXNzYWdlOiBGaXggZnVuY3Rpb24gbmFtZQog Ci1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC82ZjY1 NmI3YjIxODA4N2I2OThlNjVmODI3NTYzMjI0Y2QwN2VjNzk2Ci0gNmY2NTZiN2IyMTgwODdiNjk4 ZTY1ZjgyNzU2MzIyNGNkMDdlYzc5NiBzY3NpOiBzZDogQWRkICJwcm9iZV90eXBlIiBtb2R1bGUg cGFyYW1ldGVyIHRvIGFsbG93IHN5bmNocm9ub3VzIHByb2JpbmcKK2h0dHBzOi8vZ2l0bGFiLmNv bS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzIxNmY5OWM4OWJmYWRjOTJjY2MxZTA5 MzAwNGFlMDJiYjkyY2M2YjUKKyAyMTZmOTljODliZmFkYzkyY2NjMWUwOTMwMDRhZTAyYmI5MmNj NmI1IEFkZCBQYXJ0bmVyIFN1cHBvcnRlZCB0YWludCBmbGFnIHRvIGtBRlMKIAotaHR0cHM6Ly9n aXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMjBhODk4ODI1MTMzODA3 OGE5MDczMTRjYjg4NmI3NGU1YTJkMTEzYwotIDIwYTg5ODgyNTEzMzgwNzhhOTA3MzE0Y2I4ODZi NzRlNWEyZDExM2MgUmV2ZXJ0ICJSZW1vdmUgRVhQRVJUIGZyb20gQVJDSF9GT1JDRV9NQVhfT1JE RVIgZm9yIGFhcmNoNjQiCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFy ay8tL2NvbW1pdC9jZDlhNWFmMGEzMGQyODg3MDNjOTU3Y2ZmYmZmNzZhNDAzNDAzMGFmCisgY2Q5 YTVhZjBhMzBkMjg4NzAzYzk1N2NmZmJmZjc2YTQwMzQwMzBhZiBBZGQgUGFydG5lciBTdXBwb3J0 ZWQgdGFpbnQgZmxhZwogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFy ay8tL2NvbW1pdC9hOWIyOWYyZjQ2OGNhNjljZWQ3MDYyNTQ2YjNlZDU0MmI1MDdhZjc4Ci0gYTli MjlmMmY0NjhjYTY5Y2VkNzA2MjU0NmIzZWQ1NDJiNTA3YWY3OCBrZXJuZWwvcmhfbWVzc2FnZXMu YzogQW5vdGhlciBnY2MxMiB3YXJuaW5nIG9uIHJlZHVuZGFudCBOVUxMIHRlc3QKK2h0dHBzOi8v Z2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2NlODE4MTBmMTRlMmQ4 NjVhM2YwNzlmNzViNzNkNWQ5Njc2N2ZlMTkKKyBjZTgxODEwZjE0ZTJkODY1YTNmMDc5Zjc1Yjcz ZDVkOTY3NjdmZTE5IGthYmk6IEFkZCBrQUJJIG1hY3JvcyBmb3IgZW51bSB0eXBlCiAKLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzZkNDJmN2MxMzVk N2RhZGNhNzVhZWJhYTUxNzY2N2E0MDU5NjIyZjMKLSA2ZDQyZjdjMTM1ZDdkYWRjYTc1YWViYWE1 MTc2NjdhNDA1OTYyMmYzIEVuYWJsZSBJT19VUklORyBmb3IgUkhFTAoraHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvN2Q4NzE4Yzc0MGM0OGFiOWI0NTFj ZjRmNjQzNmUwYWU0Y2U0MGFiNgorIDdkODcxOGM3NDBjNDhhYjliNDUxY2Y0ZjY0MzZlMGFlNGNl NDBhYjYga2FiaTogZXhwYW5kIGFuZCBjbGFyaWZ5IGRvY3VtZW50YXRpb24gb2YgYXV4IHN0cnVj dHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQv YmQ1MWRlYjcxZDA5YjY1NTljZTIzY2I3YTdiODg4NDI2ZmQ3NDdiNAotIGJkNTFkZWI3MWQwOWI2 NTU5Y2UyM2NiN2E3Yjg4ODQyNmZkNzQ3YjQgUmVtb3ZlIEVYUEVSVCBmcm9tIEFSQ0hfRk9SQ0Vf TUFYX09SREVSIGZvciBhYXJjaDY0CitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2Vy bmVsLWFyay8tL2NvbW1pdC8xYzUwODk0OGFmYzFkMjI0ZjE3ZjY0ODUxZmQzZDc0NjUxYzY1YTQw CisgMWM1MDg5NDhhZmMxZDIyNGYxN2Y2NDg1MWZkM2Q3NDY1MWM2NWE0MCBrYWJpOiBpbnRyb2R1 Y2UgUkhfS0FCSV9VU0VfQVVYX1BUUgogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qv a2VybmVsLWFyay8tL2NvbW1pdC82OTI1ODk2MzIwMDc1YWEwYWM4N2U4N2U0NmNkYmNkZmQ2MzYy ZDI3Ci0gNjkyNTg5NjMyMDA3NWFhMGFjODdlODdlNDZjZGJjZGZkNjM2MmQyNyByZWRoYXQ6IHZl cnNpb24gdHdvIG9mIE1ha2VmaWxlLnJoZWx2ZXIgdHdlYWtzCitodHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC82ZjViNmFlMzg2Y2NjZjE5MWYyNGVhMWY5 ZTdlZjM2ZTc3MTQyNDdmCisgNmY1YjZhZTM4NmNjY2YxOTFmMjRlYTFmOWU3ZWYzNmU3NzE0MjQ3 ZiBrYWJpOiByZW5hbWUgUkhfS0FCSV9TSVpFX0FORF9FWFRFTkQgdG8gQVVYCiAKLWh0dHBzOi8v Z2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzFjYWI5YWViNjNmZDNk MWVhZjQzNDM1ZWU4OTI4ZDgzMTRiMDNjYjgKLSAxY2FiOWFlYjYzZmQzZDFlYWY0MzQzNWVlODky OGQ4MzE0YjAzY2I4IHJlZGhhdDogIGFkYXB0IHRvIHVwc3RyZWFtIE1ha2VmaWxlIGNoYW5nZQor aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzIyZjU0 N2NmN2RiMGNmNTQ0MzEzNDgzZGQ1MmQyMDQ2NTg5YzQ3OAorIDMyMmY1NDdjZjdkYjBjZjU0NDMx MzQ4M2RkNTJkMjA0NjU4OWM0Nzgga2FiaTogbW9yZSBjb25zaXN0ZW50IF9SSF9LQUJJX1NJWkVf QU5EX0VYVEVORAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC9iODFiY2MyOTkzYWExNDNhN2MzNDQ3NTI0YzRmM2U4YWIxMTQxNWM5Ci0gYjgxYmNj Mjk5M2FhMTQzYTdjMzQ0NzUyNGM0ZjNlOGFiMTE0MTVjOSBrZXJuZWwvcmhfbWVzc2FnZXMuYzog Z2NjMTIgd2FybmluZyBvbiByZWR1bmRhbnQgTlVMTCB0ZXN0CitodHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC81NzA1NzM3YmI4MDk1M2U4MDBkODAzOGU2 YTBmYjMwMjZlYjRjZmM0CisgNTcwNTczN2JiODA5NTNlODAwZDgwMzhlNmEwZmIzMDI2ZWI0Y2Zj NCBrYWJpOiB1c2UgZml4ZWQgZmllbGQgbmFtZSBmb3IgZXh0ZW5kZWQgcGFydAogCi1odHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kNjM2Mjc2ZWFlNGNj NGU3MzUyNjNkM2YyMjM2NTA0YzVlN2Y5NzFmCi0gZDYzNjI3NmVhZTRjYzRlNzM1MjYzZDNmMjIz NjUwNGM1ZTdmOTcxZiBDaGFuZ2UgYWNwaV9idXNfZ2V0X2FjcGlfZGV2aWNlIHRvIGFjcGlfZ2V0 X2FjcGlfZGV2CitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9hYzgxYzBmYjRjNTk4MDdkYjI1Y2Y2MjMzODdlZTFkOGYxNGFjZDQzCisgYWM4MWMwZmI0 YzU5ODA3ZGIyNWNmNjIzMzg3ZWUxZDhmMTRhY2Q0MyBrYWJpOiBmaXggZGVyZWZlcmVuY2UgaW4g UkhfS0FCSV9DSEVDS19FWFQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5l bC1hcmsvLS9jb21taXQvNWIxZWM1ZWZjMjgwZjg2NjI1ZTliNGFkODAxNWZkYWYxZWI3YWMzNgot IDViMWVjNWVmYzI4MGY4NjYyNWU5YjRhZDgwMTVmZGFmMWViN2FjMzYgQVJLOiBSZW1vdmUgY29k ZSBtYXJraW5nIGRldmljZXMgdW5tYWludGFpbmVkCitodHRwczovL2dpdGxhYi5jb20vY2tpLXBy b2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC84N2M0YjQ0YjgxY2U0ZmI1Nzk5NTdkODc0ZWQ3YzJm MmMyNjM5MjY2CisgODdjNGI0NGI4MWNlNGZiNTc5OTU3ZDg3NGVkN2MyZjJjMjYzOTI2NiBrYWJp OiBmaXggUkhfS0FCSV9TRVRfU0laRSBtYWNybwogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXBy b2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC80ZmMxNTBlZGZiYjZjMzYzNDZiOTVmYmUzNzVkZThm MmQ4ZTUwMzRhCi0gNGZjMTUwZWRmYmI2YzM2MzQ2Yjk1ZmJlMzc1ZGU4ZjJkOGU1MDM0YSByaF9t ZXNzYWdlOiBGaXggZnVuY3Rpb24gbmFtZQoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0 L2tlcm5lbC1hcmsvLS9jb21taXQvMzE0MDUzODA2ZDNhNGNkM2FiODRhMTE0MzE0MmMwYmQ3ZTY4 NzkzOAorIDMxNDA1MzgwNmQzYTRjZDNhYjg0YTExNDMxNDJjMGJkN2U2ODc5Mzgga2FiaTogZXhw YW5kIGFuZCBjbGFyaWZ5IGRvY3VtZW50YXRpb24KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1w cm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvN2M1MmRmYmNmY2Y2NGIyNzViN2MxZmYxN2E3YTVi YmNmZWFiZjgwNQotIDdjNTJkZmJjZmNmNjRiMjc1YjdjMWZmMTdhN2E1YmJjZmVhYmY4MDUgQWRk IFBhcnRuZXIgU3VwcG9ydGVkIHRhaW50IGZsYWcgdG8ga0FGUworaHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMGZiZGUxOTUwOTdlNTk0MDgzNTVkYzY0 YTBiZTI2YjUwYjllZjMwZQorIDBmYmRlMTk1MDk3ZTU5NDA4MzU1ZGM2NGEwYmUyNmI1MGI5ZWYz MGUga2FiaTogbWFrZSBSSF9LQUJJX1VTRSByZXBsYWNlIGFueSBudW1iZXIgb2YgcmVzZXJ2ZWQg ZmllbGRzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0LzdkZTY5Mzk3ZTE5NTM5NmM5MzBjYTQ3MmNiOWU0Y2QzZjFkNThlZTMKLSA3ZGU2OTM5N2Ux OTUzOTZjOTMwY2E0NzJjYjllNGNkM2YxZDU4ZWUzIEFkZCBQYXJ0bmVyIFN1cHBvcnRlZCB0YWlu dCBmbGFnCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC81YWFlNzdiNTEzY2Y5NDhhMDJkZTQwNjFiOTFjOGRhNzBmMTE1N2E0CisgNWFhZTc3YjUxM2Nm OTQ4YTAyZGU0MDYxYjkxYzhkYTcwZjExNTdhNCBrYWJpOiByZW5hbWUgUkhfS0FCSV9VU0UyIHRv IFJIX0tBQklfVVNFX1NQTElUCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJu ZWwtYXJrLy0vY29tbWl0LzhjYjVmYjQ1YTNlZjJhNTk4ZjVmNzg3MTVhYzAxNWVlOGVhZGI2MDEK LSA4Y2I1ZmI0NWEzZWYyYTU5OGY1Zjc4NzE1YWMwMTVlZThlYWRiNjAxIGthYmk6IEFkZCBrQUJJ IG1hY3JvcyBmb3IgZW51bSB0eXBlCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2Vy bmVsLWFyay8tL2NvbW1pdC8wMDVkMGNiNmJlOTRiYmJhMzYyY2Y4NzdkMTk1OWVlOTJkYmU5ZjZm CisgMDA1ZDBjYjZiZTk0YmJiYTM2MmNmODc3ZDE5NTllZTkyZGJlOWY2ZiBrYWJpOiBjaGFuZ2Ug UkhfS0FCSV9SRVBMQUNFMiB0byBSSF9LQUJJX1JFUExBQ0VfU1BMSVQKIAotaHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYWIyMDRhYTY3YjA2MzI1ZWVl ZWZjYzUxOWEzMzIwN2UxZGUxYzJiMQotIGFiMjA0YWE2N2IwNjMyNWVlZWVmY2M1MTlhMzMyMDdl MWRlMWMyYjEga2FiaTogZXhwYW5kIGFuZCBjbGFyaWZ5IGRvY3VtZW50YXRpb24gb2YgYXV4IHN0 cnVjdHMKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 L2Q0YWUzNDYwNGU1MWE4NmY2MzRlNDczYjkzNDcxNzVkODVhNWE5MDMKKyBkNGFlMzQ2MDRlNTFh ODZmNjM0ZTQ3M2I5MzQ3MTc1ZDg1YTVhOTAzIGthYmk6IGNoYW5nZSBSSF9LQUJJX1JFUExBQ0Vf VU5TQUZFIHRvIFJIX0tBQklfQlJPS0VOX1JFUExBQ0UKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNDIzMTkwYWIyNGRmYWVlYWM2Njg0NGQ1MTY3 MjdlNjRlMjVjMDIwZQotIDQyMzE5MGFiMjRkZmFlZWFjNjY4NDRkNTE2NzI3ZTY0ZTI1YzAyMGUg a2FiaTogaW50cm9kdWNlIFJIX0tBQklfVVNFX0FVWF9QVFIKK2h0dHBzOi8vZ2l0bGFiLmNvbS9j a2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzVmYTIzNjEyN2ZkMzQxNzgyMTVkZjZmNDNk NzZiZTU2YTZiMDU1ZjkKKyA1ZmEyMzYxMjdmZDM0MTc4MjE1ZGY2ZjQzZDc2YmU1NmE2YjA1NWY5 IGthYmk6IGludHJvZHVjZSBSSF9LQUJJX0FERF9NT0RJRklFUgogCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8xN2UwY2E1YjljZTBmODJmYzUxZmVl YWZiNTA0ZTYwMmM1ZWJlOTU3Ci0gMTdlMGNhNWI5Y2UwZjgyZmM1MWZlZWFmYjUwNGU2MDJjNWVi ZTk1NyBrYWJpOiByZW5hbWUgUkhfS0FCSV9TSVpFX0FORF9FWFRFTkQgdG8gQVVYCitodHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8xMmZmMjc2YzUwODRj ODFkODg3OTY4Zjg3OTI0YjQxNDNjMjVmNTEzCisgMTJmZjI3NmM1MDg0YzgxZDg4Nzk2OGY4Nzky NGI0MTQzYzI1ZjUxMyBrYWJpOiBJbmNsdWRlIGtjb25maWcuaAogCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8yN2U1NWVkOTNmMjBkY2I0ZTVhYzBh ZGJmZDQ5MzIxMTFiNTRiYmZhCi0gMjdlNTVlZDkzZjIwZGNiNGU1YWMwYWRiZmQ0OTMyMTExYjU0 YmJmYSBrYWJpOiBtb3JlIGNvbnNpc3RlbnQgX1JIX0tBQklfU0laRV9BTkRfRVhURU5ECitodHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8wMjU4ZTFkMTg1 NGE0ZmI5Njk3NDNiMDVkYjE5ZmQzOTIwNWMxNTg3CisgMDI1OGUxZDE4NTRhNGZiOTY5NzQzYjA1 ZGIxOWZkMzkyMDVjMTU4NyBrYWJpOiBtYWNyb3MgZm9yIGludGVudGlvbmFsIGtBQkkgYnJlYWth Z2UKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQv MzMwN2YxMDBhZjk2NzY0OTc1ZGM3ZjdjYjg2YmI3NjQzZjYyOTAyMwotIDMzMDdmMTAwYWY5Njc2 NDk3NWRjN2Y3Y2I4NmJiNzY0M2Y2MjkwMjMga2FiaTogdXNlIGZpeGVkIGZpZWxkIG5hbWUgZm9y IGV4dGVuZGVkIHBhcnQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJr Ly0vY29tbWl0L2ZiMjJmNDg3NjkzMTA0ZDhhM2I5MDU4MjFjZTlkNjk4YTExZjFhNjQKKyBmYjIy ZjQ4NzY5MzEwNGQ4YTNiOTA1ODIxY2U5ZDY5OGExMWYxYTY0IGthYmk6IGZpeCB0aGUgbm90ZSBh Ym91dCB0ZXJtaW5hdGluZyBzZW1pY29sb24KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMTQ4NWZmOGYyZWRhZWYxZWU1NTVjYzA4ZmYwZTFlMGEw MTI2ZTk2MAotIDE0ODVmZjhmMmVkYWVmMWVlNTU1Y2MwOGZmMGUxZTBhMDEyNmU5NjAga2FiaTog Zml4IGRlcmVmZXJlbmNlIGluIFJIX0tBQklfQ0hFQ0tfRVhUCitodHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC84Yjk0ODYzMzBiYWM2ZmEwZmFhZWUzODFj YjFmNGZjMjFhNTRhZGJmCisgOGI5NDg2MzMwYmFjNmZhMGZhYWVlMzgxY2IxZjRmYzIxYTU0YWRi ZiBrYWJpOiBpbnRyb2R1Y2UgUkhfS0FCSV9ISURFX0lOQ0xVREUgYW5kIFJIX0tBQklfRkFLRV9J TkNMVURFCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0L2I2NGQ3YWQ1YjJiYzE3YmMwZDcxMzAwNzRkMzU0MTUxNjJjYWQyM2IKLSBiNjRkN2FkNWIy YmMxN2JjMGQ3MTMwMDc0ZDM1NDE1MTYyY2FkMjNiIGthYmk6IGZpeCBSSF9LQUJJX1NFVF9TSVpF IG1hY3JvCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC9lMjc5MzMyY2QzMmM0OWNjZjk5Nzg4ZjZlZTI2NmM5Y2FmMTA5MTJjCisgZTI3OTMzMmNkMzJj NDljY2Y5OTc4OGY2ZWUyNjZjOWNhZjEwOTEyYyBwY2kuaDogRml4IHN0YXRpYyBpbmNsdWRlCiAK LWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzlmNGE4 ODJiNmZkNzAzMzI5MGYwNDcxZmM0NWJjNjA2NjljY2QxOWUKLSA5ZjRhODgyYjZmZDcwMzMyOTBm MDQ3MWZjNDViYzYwNjY5Y2NkMTllIGthYmk6IGV4cGFuZCBhbmQgY2xhcmlmeSBkb2N1bWVudGF0 aW9uCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83 N2ZlNTQ0ZjJhODMyYzYzMzIxYTM4ZTcxZjg2MmRmMjU2MTllYmRmCisgNzdmZTU0NGYyYTgzMmM2 MzMyMWEzOGU3MWY4NjJkZjI1NjE5ZWJkZiBkcml2ZXJzL3BjaS9wY2ktZHJpdmVyLmM6IEZpeCBp Zi9pZmRlZiB0eXBvCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJr Ly0vY29tbWl0LzkyZGFmMDk2ZjQyMzM5YTZmNWQxMmNlOTFiYmI5MDQ3OTAxNjBhMzAKLSA5MmRh ZjA5NmY0MjMzOWE2ZjVkMTJjZTkxYmJiOTA0NzkwMTYwYTMwIGthYmk6IG1ha2UgUkhfS0FCSV9V U0UgcmVwbGFjZSBhbnkgbnVtYmVyIG9mIHJlc2VydmVkIGZpZWxkcworaHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZmRmZjY5YjZmZjExMDRiNGY5MWIy OTg0YjI5YzQ4YmYxMTkwYWJkMQorIGZkZmY2OWI2ZmYxMTA0YjRmOTFiMjk4NGIyOWM0OGJmMTE5 MGFiZDEga2VybmVsL3JoX3RhaW50LmM6IFVwZGF0ZSB0byBuZXcgbWVzc2FnaW5nCiAKLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0Lzg2MDM3NGQyMzI4 MTRlNzliZjgzMTY0NjQ2OWJmN2EzYWM1YWY4NDcKLSA4NjAzNzRkMjMyODE0ZTc5YmY4MzE2NDY0 NjliZjdhM2FjNWFmODQ3IGthYmk6IHJlbmFtZSBSSF9LQUJJX1VTRTIgdG8gUkhfS0FCSV9VU0Vf U1BMSVQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzZlOWU5MTdhOTYyZGRmNTQ2ZDI5YTRjZmNhMGIyMDIzYmVhZjk5MjAKKyA2ZTllOTE3YTk2MmRk ZjU0NmQyOWE0Y2ZjYTBiMjAyM2JlYWY5OTIwIHJlZGhhdDogQWRkIG1hcmtfZHJpdmVyX2RlcHJl Y2F0ZWQoKQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9jMzgyZTE3Mzk5Mjc5ZjY2ZjEyYTcwZGIxY2RiY2RmZDRiYjAwNzI0Ci0gYzM4MmUxNzM5 OTI3OWY2NmYxMmE3MGRiMWNkYmNkZmQ0YmIwMDcyNCBrYWJpOiBjaGFuZ2UgUkhfS0FCSV9SRVBM QUNFMiB0byBSSF9LQUJJX1JFUExBQ0VfU1BMSVQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJv amVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzM3ZTM1Y2M0MDk0NWEyOTk2NzdjMDU1ZmU5OWQwOTM2 YjM3ZDQ3MzQKKyAzN2UzNWNjNDA5NDVhMjk5Njc3YzA1NWZlOTlkMDkzNmIzN2Q0NzM0IFJIRUw6 IGRpc2FibGUgaW9fdXJpbmcgc3VwcG9ydAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC8yZmE4MmZkZjllY2E4ODA1YmI1ODU2NDAyNzJmMzgwYmEy YzNlMTE1Ci0gMmZhODJmZGY5ZWNhODgwNWJiNTg1NjQwMjcyZjM4MGJhMmMzZTExNSBrYWJpOiBj aGFuZ2UgUkhfS0FCSV9SRVBMQUNFX1VOU0FGRSB0byBSSF9LQUJJX0JST0tFTl9SRVBMQUNFCito dHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kYmNjMmQz ZDYyZDA5MmZkZDJmODM0NTBjYTMyNzZkMTU4OTYwNGNjCisgZGJjYzJkM2Q2MmQwOTJmZGQyZjgz NDUwY2EzMjc2ZDE1ODk2MDRjYyBicGY6IEZpeCB1bnByaXZpbGVnZWRfYnBmX2Rpc2FibGVkIHNl dHVwCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzViYTgwM2Q2N2FiNmY0NzYyMTI3YjVlNDI4MzFkYTc5Zjc2Njc1YzUKLSA1YmE4MDNkNjdhYjZm NDc2MjEyN2I1ZTQyODMxZGE3OWY3NjY3NWM1IGthYmk6IGludHJvZHVjZSBSSF9LQUJJX0FERF9N T0RJRklFUgoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21t aXQvMzZkNWQ0ZjNkNmM2ZjcxZTY3OGY5YTEzNTJmYmVlZDgwYWMxYzRiMAorIDM2ZDVkNGYzZDZj NmY3MWU2NzhmOWExMzUyZmJlZWQ4MGFjMWM0YjAgd2lyZWd1YXJkOiBkaXNhYmxlIGluIEZJUFMg bW9kZQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC81N2FkM2U1NmQzYzIwOTAyZTI5NTBiZDQzNTg4ZDQ2NjExNThkN2MyCi0gNTdhZDNlNTZkM2My MDkwMmUyOTUwYmQ0MzU4OGQ0NjYxMTU4ZDdjMiBrYWJpOiBJbmNsdWRlIGtjb25maWcuaAoraHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvOTIwYWRjYzdk OTc4NDQ0MmVmZDE1MTQwOTY0ODQ3NzQ2YzBlMTJmYQorIDkyMGFkY2M3ZDk3ODQ0NDJlZmQxNTE0 MDk2NDg0Nzc0NmMwZTEyZmEgUkVESEFUOiBjb3Jlc2lnaHQ6IGV0bTR4OiBEaXNhYmxlIGNvcmVz aWdodCBvbiBIUEUgQXBvbGxvIDcwCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0L2EwNzYwMTlmYWIzYjZhNzk5M2ExMGU0MWExZTJlNjRjZWE1MmQ0 NjUKLSBhMDc2MDE5ZmFiM2I2YTc5OTNhMTBlNDFhMWUyZTY0Y2VhNTJkNDY1IGthYmk6IG1hY3Jv cyBmb3IgaW50ZW50aW9uYWwga0FCSSBicmVha2FnZQoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1w cm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNzc1YjliMWJhMzcwM2IxMmZmNGViYTE3YWQ2ZmZj MDkyOTk4ZWRlYQorIDc3NWI5YjFiYTM3MDNiMTJmZjRlYmExN2FkNmZmYzA5Mjk5OGVkZWEgcmVk aGF0OiByZW1vdmUgcmVtYWluaW5nIHJlZmVyZW5jZXMgb2YgQ09ORklHX1JIX0RJU0FCTEVfREVQ UkVDQVRFRAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9jZWQzMmRjNThjNzFiOTc3YTNhOGY0NDQzMDZiMTEyNzJhYjNjOWZkCi0gY2VkMzJkYzU4 YzcxYjk3N2EzYThmNDQ0MzA2YjExMjcyYWIzYzlmZCBrYWJpOiBmaXggdGhlIG5vdGUgYWJvdXQg dGVybWluYXRpbmcgc2VtaWNvbG9uCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2Vy bmVsLWFyay8tL2NvbW1pdC8xMDYwNTVmZTVmMmNiMDM2Yzc1YTRkMzY0OTgzMmMyZmY4Yzc4OTgz CisgMTA2MDU1ZmU1ZjJjYjAzNmM3NWE0ZDM2NDk4MzJjMmZmOGM3ODk4MyBhcmNoL3g4NjogUmVt b3ZlIHZlbmRvciBzcGVjaWZpYyBDUFUgSUQgY2hlY2tzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9j a2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzY0MjY3MTZjZjdmOTAyNWM4ZGI5MDE3OWMy MTUxMTRmNjdhOTdjMTYKLSA2NDI2NzE2Y2Y3ZjkwMjVjOGRiOTAxNzljMjE1MTE0ZjY3YTk3YzE2 IGthYmk6IGludHJvZHVjZSBSSF9LQUJJX0hJREVfSU5DTFVERSBhbmQgUkhfS0FCSV9GQUtFX0lO Q0xVREUKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzhkMzg2ZjFjZmE5MTJjYjQzZDg2Njg2MGNhM2MzZjM0N2Y5N2Q5MTAKKyA4ZDM4NmYxY2ZhOTEy Y2I0M2Q4NjY4NjBjYTNjM2YzNDdmOTdkOTEwIHJlZGhhdDogUmVwbGFjZSBoYXJkd2FyZS5yZWRo YXQuY29tIGxpbmsgaW4gVW5zdXBwb3J0ZWQgbWVzc2FnZQogCi1odHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83MDM5NDI4NjIzZDlkZWY0NjY1ZjUxYThm NmUyMzJkZDVkYzYyMDc1Ci0gNzAzOTQyODYyM2Q5ZGVmNDY2NWY1MWE4ZjZlMjMyZGQ1ZGM2MjA3 NSBwY2kuaDogRml4IHN0YXRpYyBpbmNsdWRlCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC8wZmM2YTc2ZDMyOTA5ZDNiN2I1ZTI0NWY1Y2UyOTU2OTc3 Yzc2MTJlCisgMGZjNmE3NmQzMjkwOWQzYjdiNWUyNDVmNWNlMjk1Njk3N2M3NjEyZSB4ODY6IEZp eCBjb21waWxlIGlzc3VlcyB3aXRoIHJoX2NoZWNrX3N1cHBvcnRlZCgpCiAKLWh0dHBzOi8vZ2l0 bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzY4NTNlNGMyOWU5N2EzMzEz OTk2OWU1ODRjZjQ1NDIxZGVjNTU4ZWYKLSA2ODUzZTRjMjllOTdhMzMxMzk5NjllNTg0Y2Y0NTQy MWRlYzU1OGVmIGRyaXZlcnMvcGNpL3BjaS1kcml2ZXIuYzogRml4IGlmL2lmZGVmIHR5cG8KK2h0 dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzllZTE0Yzc5 MDE4NGIxNjkwM2QxNDNlN2E0ZDg2N2ZlZmUxYjBjZmMKKyA5ZWUxNGM3OTAxODRiMTY5MDNkMTQz ZTdhNGQ4NjdmZWZlMWIwY2ZjIEtFWVM6IE1ha2UgdXNlIG9mIHBsYXRmb3JtIGtleXJpbmcgZm9y IG1vZHVsZSBzaWduYXR1cmUgdmVyaWZ5CiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0LzNkNDU4NjdhYTRmZDZjZDhjMTg4OWZlMzAwZGFiYjg4OTRj NTIxNzQKLSAzZDQ1ODY3YWE0ZmQ2Y2Q4YzE4ODlmZTMwMGRhYmI4ODk0YzUyMTc0IGtlcm5lbC9y aF90YWludC5jOiBVcGRhdGUgdG8gbmV3IG1lc3NhZ2luZworaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZDdkZjA3ODA1MTA1MzdiMTRhODJiZGUwMmVi MTYxNDY1Mzc5NTYxNAorIGQ3ZGYwNzgwNTEwNTM3YjE0YTgyYmRlMDJlYjE2MTQ2NTM3OTU2MTQg QVJNOiB0ZWdyYTogdXNiIG5vIHJlc2V0CiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0LzkyOTRiMDZjNjIyOTVhNTQ0NmE2YWM4NDVlZDc3YWNlNjc4 NDNlYTgKLSA5Mjk0YjA2YzYyMjk1YTU0NDZhNmFjODQ1ZWQ3N2FjZTY3ODQzZWE4IHJlZGhhdDog QWRkIG1hcmtfZHJpdmVyX2RlcHJlY2F0ZWQoKQoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMjc1MzhlOWJjZWE5ODQ3MzlmNmE5ZTAzYWZiODMzZWUy YTk5ZGYyMgorIDI3NTM4ZTliY2VhOTg0NzM5ZjZhOWUwM2FmYjgzM2VlMmE5OWRmMjIgYXJtOiBt YWtlIENPTkZJR19ISUdIUFRFIG9wdGlvbmFsIHdpdGhvdXQgQ09ORklHX0VYUEVSVAogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9mMGFhODFmOTQ4 ZTE1YTM1YjEwNDhjNGRkNjdlZTlhYzRhYjkxZTQyCi0gZjBhYTgxZjk0OGUxNWEzNWIxMDQ4YzRk ZDY3ZWU5YWM0YWI5MWU0MiBSSEVMOiBkaXNhYmxlIGlvX3VyaW5nIHN1cHBvcnQKK2h0dHBzOi8v Z2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2U1ZDBlNGFjZjY1Zjdj MDhmNzk2M2Q3YmQ0YTcwZjg4OTNhYTAwNjEKKyBlNWQwZTRhY2Y2NWY3YzA4Zjc5NjNkN2JkNGE3 MGY4ODkzYWEwMDYxIHJlZGhhdDogcmhfa2FiaTogZGVkdXBsaWNhdGlvbiBmcmllbmRseSBzdHJ1 Y3RzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzZiYmIyZDNjNTJiNTk3MGFjODg2NjU5ODdmZDEwMDg1ZjA5OTRhODIKLSA2YmJiMmQzYzUyYjU5 NzBhYzg4NjY1OTg3ZmQxMDA4NWYwOTk0YTgyIGJwZjogRml4IHVucHJpdmlsZWdlZF9icGZfZGlz YWJsZWQgc2V0dXAKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0LzRiNWY5ZWVlMWNkNDI0MDc5OTIyOTIyMTYwY2RmM2NmYjJhMDMzODQKKyA0YjVmOWVl ZTFjZDQyNDA3OTkyMjkyMjE2MGNkZjNjZmIyYTAzMzg0IHJlZGhhdDogcmhfa2FiaSBhZGQgYSBj b21tZW50IHdpdGggd2FybmluZyBhYm91dCBSSF9LQUJJX0VYQ0xVREUgdXNhZ2UKIAotaHR0cHM6 Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvODk0ZGY0YWY3MWJh M2NlYjgyYWI1NzcyOGRhYjY3YWYxZmEzYWU2NQotIDg5NGRmNGFmNzFiYTNjZWI4MmFiNTc3Mjhk YWI2N2FmMWZhM2FlNjUgd2lyZWd1YXJkOiBkaXNhYmxlIGluIEZJUFMgbW9kZQoraHR0cHM6Ly9n aXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYjNlM2I4MTE2Yjg2MGY1 ZWI4NmVjY2VlYzM4OWNhNGEyYjE4YTg5NworIGIzZTNiODExNmI4NjBmNWViODZlY2NlZWMzODlj YTRhMmIxOGE4OTcgcmVkaGF0OiByaF9rYWJpOiBpbnRyb2R1Y2UgUkhfS0FCSV9FWFRFTkRfV0lU SF9TSVpFCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29t bWl0L2MzZmI5ZGMyOWUxZDQ3NzQ4N2M4MDUzMWY2YzBmODQ2ODUzNjgyZmIKLSBjM2ZiOWRjMjll MWQ0Nzc0ODdjODA1MzFmNmMwZjg0Njg1MzY4MmZiIFJFREhBVDogY29yZXNpZ2h0OiBldG00eDog RGlzYWJsZSBjb3Jlc2lnaHQgb24gSFBFIEFwb2xsbyA3MAoraHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMDYzYzQzZDJhYTc0ZGZiNWNlMGFiZWVkY2I2 MjE4MWVkNWM2ODcxZgorIDA2M2M0M2QyYWE3NGRmYjVjZTBhYmVlZGNiNjIxODFlZDVjNjg3MWYg cmVkaGF0OiByaF9rYWJpOiBJbmRpcmVjdCBFWFRFTkQgbWFjcm9zIHNvIG5lc3Rpbmcgb2Ygb3Ro ZXIgbWFjcm9zIHdpbGwgcmVzb2x2ZS4KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0 L2tlcm5lbC1hcmsvLS9jb21taXQvZmIzOWQ0ZTZiYmVjY2U2ZTVlNjBhNDU2NWYzNDFhY2UwZTNm OTJjNwotIGZiMzlkNGU2YmJlY2NlNmU1ZTYwYTQ1NjVmMzQxYWNlMGUzZjkyYzcgcmVkaGF0OiBy ZW1vdmUgcmVtYWluaW5nIHJlZmVyZW5jZXMgb2YgQ09ORklHX1JIX0RJU0FCTEVfREVQUkVDQVRF RAoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZGRk ZTc2NWQxZDZhYjY5MDQ2NWMwNjgxOGFhZjZlODljZGE2ZjIwMQorIGRkZGU3NjVkMWQ2YWI2OTA0 NjVjMDY4MThhYWY2ZTg5Y2RhNmYyMDEgcmVkaGF0OiByaF9rYWJpOiBGaXggUkhfS0FCSV9TRVRf U0laRSB0byB1c2UgZGVyZWZlcmVuY2Ugb3BlcmF0b3IKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNTVhODQ0YmRmMzVhMWIzMDgzNzNjMTZlZmUx Y2JiNTNlZDQzYjM2ZAotIDU1YTg0NGJkZjM1YTFiMzA4MzczYzE2ZWZlMWNiYjUzZWQ0M2IzNmQg YXJjaC94ODY6IFJlbW92ZSB2ZW5kb3Igc3BlY2lmaWMgQ1BVIElEIGNoZWNrcworaHR0cHM6Ly9n aXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNjk2MWZmMTUwOGMzOTJl OTRmMjEyMDFkOGM5OTUzNzA3MWY1MTBlNgorIDY5NjFmZjE1MDhjMzkyZTk0ZjIxMjAxZDhjOTk1 MzcwNzFmNTEwZTYgcmVkaGF0OiByaF9rYWJpOiBBZGQgbWFjcm9zIHRvIHNpemUgYW5kIGV4dGVu ZCBzdHJ1Y3RzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0L2UzMGQ4MDlmMjNhNGFlYWE0MGE2ZmYzOGFiYjZkMzkxOTc3YmIxNTQKLSBlMzBkODA5 ZjIzYTRhZWFhNDBhNmZmMzhhYmI2ZDM5MTk3N2JiMTU0IHJlZGhhdDogUmVwbGFjZSBoYXJkd2Fy ZS5yZWRoYXQuY29tIGxpbmsgaW4gVW5zdXBwb3J0ZWQgbWVzc2FnZQoraHR0cHM6Ly9naXRsYWIu Y29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvODZmOTE5YzgwYmQ2NmQyYjM3NzNm NjFmOTQ5Njg4OWJkNmMxYjYxNQorIDg2ZjkxOWM4MGJkNjZkMmIzNzczZjYxZjk0OTY4ODliZDZj MWI2MTUgUmVtb3ZpbmcgT2Jzb2xldGUgaGJhIHBjaS1pZHMgZnJvbSByaGVsOAogCi1odHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9hNjI1NWEzY2M2ZTEz ZDA4MzFmNmJjNjI1ZWQwMWQ5ZjVhYzM0ODZlCi0gYTYyNTVhM2NjNmUxM2QwODMxZjZiYzYyNWVk MDFkOWY1YWMzNDg2ZSB4ODY6IEZpeCBjb21waWxlIGlzc3VlcyB3aXRoIHJoX2NoZWNrX3N1cHBv cnRlZCgpCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC8zZjQyNmRiOGU1NTU0NmFlYzBlMzAyY2QwZWM5NTM4ZjZhMmZmMjc5CisgM2Y0MjZkYjhlNTU1 NDZhZWMwZTMwMmNkMGVjOTUzOGY2YTJmZjI3OSBtcHRzYXM6IHBjaS1pZCB0YWJsZSBjaGFuZ2Vz CiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2Q4 NjJjYWRlZjFjZDk3MDEyMzBlODNhNTg0ZTQ4NjM5YmQ1YTQ0NGUKLSBkODYyY2FkZWYxY2Q5NzAx MjMwZTgzYTU4NGU0ODYzOWJkNWE0NDRlIEtFWVM6IE1ha2UgdXNlIG9mIHBsYXRmb3JtIGtleXJp bmcgZm9yIG1vZHVsZSBzaWduYXR1cmUgdmVyaWZ5CitodHRwczovL2dpdGxhYi5jb20vY2tpLXBy b2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9jZGY4ODQ5M2U2ZjFmMTU0N2YxOWE4YTZjYzFhNjIy MmFiNGExNDA4CisgY2RmODg0OTNlNmYxZjE1NDdmMTlhOGE2Y2MxYTYyMjJhYjRhMTQwOCBtcHRz cGk6IHBjaS1pZCB0YWJsZSBjaGFuZ2VzCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0L2VjNWQzNDQ1YjY2M2E1YmE3MjI3YTBhNDJiYTRmN2JkNGQz OGVkNGEKLSBlYzVkMzQ0NWI2NjNhNWJhNzIyN2EwYTQyYmE0ZjdiZDRkMzhlZDRhIElucHV0OiBy bWk0IC0gcmVtb3ZlIHRoZSBuZWVkIGZvciBhcnRpZmljaWFsIElSUSBpbiBjYXNlIG9mIEhJRAor aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvM2FmMGEz ODAzOWY3Y2JiNmEwNGI1OWIxMWViMjE2ZDUyNjNjN2RiOQorIDNhZjBhMzgwMzlmN2NiYjZhMDRi NTliMTFlYjIxNmQ1MjYzYzdkYjkgcWxhMnh4eDogUmVtb3ZlIFBDSSBJRHMgb2YgZGVwcmVjYXRl ZCBhZGFwdGVyCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0v Y29tbWl0LzljZDRiMmZhM2FjODg4YzQ3ODVmMzk4NDNhNmYxNDdkYzE1ZmFjMGUKLSA5Y2Q0YjJm YTNhYzg4OGM0Nzg1ZjM5ODQzYTZmMTQ3ZGMxNWZhYzBlIEFSTTogdGVncmE6IHVzYiBubyByZXNl dAoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzE5 MDEyM2I1YjVkMGU5NTE3OTY1NDU4YjA5YWFkOGYyZjE5Yzc5NQorIDMxOTAxMjNiNWI1ZDBlOTUx Nzk2NTQ1OGIwOWFhZDhmMmYxOWM3OTUgaHBzYTogcmVtb3ZlIG9sZCBjY2lzcy1iYXNlZCBzbWFy dGFycmF5IHBjaSBpZHMKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvMjlkNGUwYzYwODE5MmNkMjc4YzFmNDUxZDEwN2YwZjYxODdjZmEwYwotIDI5 ZDRlMGM2MDgxOTJjZDI3OGMxZjQ1MWQxMDdmMGY2MTg3Y2ZhMGMgYXJtOiBtYWtlIENPTkZJR19I SUdIUFRFIG9wdGlvbmFsIHdpdGhvdXQgQ09ORklHX0VYUEVSVAoraHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYjdiZjEzY2YzZDA0ODA0ZDMzZjUwYjZm ODZiZDYxNzE4MWQ4NWE3MQorIGI3YmYxM2NmM2QwNDgwNGQzM2Y1MGI2Zjg2YmQ2MTcxODFkODVh NzEga2VybmVsOiBhZGQgU1VQUE9SVF9SRU1PVkVEIGtlcm5lbCB0YWludAogCi1odHRwczovL2dp dGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8yYWQ1OGZiYThlZTMzOThh YzgwOTM3ZTgyYWVhMWZiNmVjMGRlYTZhCi0gMmFkNThmYmE4ZWUzMzk4YWM4MDkzN2U4MmFlYTFm YjZlYzBkZWE2YSByZWRoYXQ6IHJoX2thYmk6IGRlZHVwbGljYXRpb24gZnJpZW5kbHkgc3RydWN0 cworaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNzNk MzU4NWRmZmU4Yzc5ZWZhZGMxMGVkNDhhZTAyNWNlODdkOWJlNworIDczZDM1ODVkZmZlOGM3OWVm YWRjMTBlZDQ4YWUwMjVjZTg3ZDliZTcgUmVuYW1lIFJIX0RJU0FCTEVfREVQUkVDQVRFRCB0byBS SEVMX0RJRkZFUkVOQ0VTCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwt YXJrLy0vY29tbWl0LzhjNWMwMDNjZWQ2MzJjMGQ0NTkzN2VkYTYwZTQ2ODM0NzlmZDdmZDgKLSA4 YzVjMDAzY2VkNjMyYzBkNDU5MzdlZGE2MGU0NjgzNDc5ZmQ3ZmQ4IHJlZGhhdDogcmhfa2FiaSBh ZGQgYSBjb21tZW50IHdpdGggd2FybmluZyBhYm91dCBSSF9LQUJJX0VYQ0xVREUgdXNhZ2UKK2h0 dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2ZmYWY4ZjM0 NjNlZWI4MDkxYjI4YmQxNGJkMTVlMGE0YzIzZjhkYWYKKyBmZmFmOGYzNDYzZWViODA5MWIyOGJk MTRiZDE1ZTBhNGMyM2Y4ZGFmIHMzOTA6IExvY2sgZG93biB0aGUga2VybmVsIHdoZW4gdGhlIElQ TCBzZWN1cmUgZmxhZyBpcyBzZXQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvYTE0YTAzMTk0NDgyMzM4NDg3ZGVjYTQyYjFiOTIyNjU0OTkzNDI2 YQotIGExNGEwMzE5NDQ4MjMzODQ4N2RlY2E0MmIxYjkyMjY1NDk5MzQyNmEgcmVkaGF0OiByaF9r YWJpOiBpbnRyb2R1Y2UgUkhfS0FCSV9FWFRFTkRfV0lUSF9TSVpFCitodHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC80MzlhMmQyOTkzY2E3MDIxNTU1M2Q3 OTdhMDE2YTFmN2Q1MTM3ODU4CisgNDM5YTJkMjk5M2NhNzAyMTU1NTNkNzk3YTAxNmExZjdkNTEz Nzg1OCBlZmk6IExvY2sgZG93biB0aGUga2VybmVsIGlmIGJvb3RlZCBpbiBzZWN1cmUgYm9vdCBt b2RlCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzZhYzJiNTMyZGQyNDVkZDFmZjg4ZjhiOTQ1NjQ0OGIyM2IwOGMyMjkKLSA2YWMyYjUzMmRkMjQ1 ZGQxZmY4OGY4Yjk0NTY0NDhiMjNiMDhjMjI5IHJlZGhhdDogcmhfa2FiaTogSW5kaXJlY3QgRVhU RU5EIG1hY3JvcyBzbyBuZXN0aW5nIG9mIG90aGVyIG1hY3JvcyB3aWxsIHJlc29sdmUuCitodHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC81OGI2N2U1YjZm NTc5OGU5NTRhYTQ3YTRmODQ2MGQ2NjJjNzJhM2IwCisgNThiNjdlNWI2ZjU3OThlOTU0YWE0N2E0 Zjg0NjBkNjYyYzcyYTNiMCBlZmk6IEFkZCBhbiBFRklfU0VDVVJFX0JPT1QgZmxhZyB0byBpbmRp Y2F0ZSBzZWN1cmUgYm9vdCBtb2RlCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0L2RmYjVhMjE2NGQ1ZjEzNTI2OGU4MGU0YjViMzI2YjFhZTI5NDE0 MzIKLSBkZmI1YTIxNjRkNWYxMzUyNjhlODBlNGI1YjMyNmIxYWUyOTQxNDMyIHJlZGhhdDogcmhf a2FiaTogRml4IFJIX0tBQklfU0VUX1NJWkUgdG8gdXNlIGRlcmVmZXJlbmNlIG9wZXJhdG9yCito dHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kMTQxYTc2 NTdlOTY5NWMyMjUwZWFmMTQ2M2Q5N2I3ZGZmZGQ0ODk0CisgZDE0MWE3NjU3ZTk2OTVjMjI1MGVh ZjE0NjNkOTdiN2RmZmRkNDg5NCBzZWN1cml0eTogbG9ja2Rvd246IGV4cG9zZSBhIGhvb2sgdG8g bG9jayB0aGUga2VybmVsIGRvd24KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvODEzOGNkZTg4YzhkYjQ1NzQ0NzRiNmRlYjcwZTYxOTEyMzRmZWRl MAotIDgxMzhjZGU4OGM4ZGI0NTc0NDc0YjZkZWI3MGU2MTkxMjM0ZmVkZTAgcmVkaGF0OiByaF9r YWJpOiBBZGQgbWFjcm9zIHRvIHNpemUgYW5kIGV4dGVuZCBzdHJ1Y3RzCitodHRwczovL2dpdGxh Yi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9mOTEzYjk5Yzg2N2FlMjhiMTYz NTE2ZGM4NWE4NTRkYTM3MmEyZGQ4CisgZjkxM2I5OWM4NjdhZTI4YjE2MzUxNmRjODVhODU0ZGEz NzJhMmRkOCBNYWtlIGdldF9jZXJ0X2xpc3QoKSB1c2UgZWZpX3N0YXR1c190b19zdHIoKSB0byBw cmludCBlcnJvciBtZXNzYWdlcy4KIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tl cm5lbC1hcmsvLS9jb21taXQvMWU0OTQyNGVmMmZlOTI1NDcwODhjNTE5MDlkYmNlNTZmMTMwZjVm ZgotIDFlNDk0MjRlZjJmZTkyNTQ3MDg4YzUxOTA5ZGJjZTU2ZjEzMGY1ZmYgUmVtb3ZpbmcgT2Jz b2xldGUgaGJhIHBjaS1pZHMgZnJvbSByaGVsOAoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9q ZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNDRlNjdmYTJjZmNmNGMxNTE3MGVlNjE4YTBiOTMwOGEy ZWM2YjgzZgorIDQ0ZTY3ZmEyY2ZjZjRjMTUxNzBlZTYxOGEwYjkzMDhhMmVjNmI4M2YgQWRkIGVm aV9zdGF0dXNfdG9fc3RyKCkgYW5kIHJld29yayBlZmlfc3RhdHVzX3RvX2VycigpLgogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC82MjM0MGM4MTM4 YzczMjQ2Mzk5ZmY0OTE3ZDU1YjljNWFhZTNjYjQ2Ci0gNjIzNDBjODEzOGM3MzI0NjM5OWZmNDkx N2Q1NWI5YzVhYWUzY2I0NiBtcHRzYXM6IHBjaS1pZCB0YWJsZSBjaGFuZ2VzCitodHRwczovL2dp dGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83ZTFjNDM3MjNiN2U5NDhi MDJlMmQ5MjQxNmJkMzBiZjYzMDFhMjRiCisgN2UxYzQzNzIzYjdlOTQ4YjAyZTJkOTI0MTZiZDMw YmY2MzAxYTI0YiBBZGQgc3VwcG9ydCBmb3IgZGVwcmVjYXRpbmcgcHJvY2Vzc29ycwogCi1odHRw czovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9lOGNjZGUyYThm MGIyZmIxNGFjOTc1ZTNkNTY2Y2MzOWI1ODgzM2RjCi0gZThjY2RlMmE4ZjBiMmZiMTRhYzk3NWUz ZDU2NmNjMzliNTg4MzNkYyBtcHRzcGk6IHBjaS1pZCB0YWJsZSBjaGFuZ2VzCitodHRwczovL2dp dGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9mZTRlMDg1Y2RhNzliYjAx NjFmZjI0ODI1NjQ3NzY4MjdhY2YwMWU2CisgZmU0ZTA4NWNkYTc5YmIwMTYxZmYyNDgyNTY0Nzc2 ODI3YWNmMDFlNiBhcm06IGFhcmNoNjQ6IERyb3AgdGhlIEVYUEVSVCBzZXR0aW5nIGZyb20gQVJN NjRfRk9SQ0VfNTJCSVQKIAotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvZDBkZTEzZTUxNTYwYmU3YTdiYWIxYTI2NDkzMTdjMGViNDc2ZGIzMwotIGQw ZGUxM2U1MTU2MGJlN2E3YmFiMWEyNjQ5MzE3YzBlYjQ3NmRiMzMgcWxhMnh4eDogUmVtb3ZlIFBD SSBJRHMgb2YgZGVwcmVjYXRlZCBhZGFwdGVyCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC9iNGMyYzYxYzE2MmVmZmViYWRjNGQzMDJkNzhjZDNhMjYy ZDMxMzExCisgYjRjMmM2MWMxNjJlZmZlYmFkYzRkMzAyZDc4Y2QzYTI2MmQzMTMxMSBpb21tdS9h cm0tc21tdTogd29ya2Fyb3VuZCBETUEgbW9kZSBpc3N1ZXMKIAotaHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvNzUzYTA3MGIzM2UwYjFiYjllYzlkZmQ4 MWYwNDQxOTIzNTEyYTk4NwotIDc1M2EwNzBiMzNlMGIxYmI5ZWM5ZGZkODFmMDQ0MTkyMzUxMmE5 ODcgaHBzYTogcmVtb3ZlIG9sZCBjY2lzcy1iYXNlZCBzbWFydGFycmF5IHBjaSBpZHMKK2h0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2VhMDg5YzllZGQ2 YTlhZTZlODY3NzViNTJiYmIzZjM4NWQ3OGVlN2MKKyBlYTA4OWM5ZWRkNmE5YWU2ZTg2Nzc1YjUy YmJiM2YzODVkNzhlZTdjIHJoX2thYmk6IGludHJvZHVjZSBSSF9LQUJJX0VYQ0xVREUKIAotaHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvN2RhN2I4OGJh NWYyYWU5MjAzYTJkOGRmYzYxNmJhYjcxNzc4NDExYgotIDdkYTdiODhiYTVmMmFlOTIwM2EyZDhk ZmM2MTZiYWI3MTc3ODQxMWIga2VybmVsOiBhZGQgU1VQUE9SVF9SRU1PVkVEIGtlcm5lbCB0YWlu dAoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvM2Jj NDZkNGQ5NTc3Y2JmMjIwNzI0NDkzMDllNTFhZmRmMGMwODZmOAorIDNiYzQ2ZDRkOTU3N2NiZjIy MDcyNDQ5MzA5ZTUxYWZkZjBjMDg2ZjggaXBtaTogZG8gbm90IGNvbmZpZ3VyZSBpcG1pIGZvciBI UEUgbTQwMAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC9iMDJkMmE1YTc5MmJlNDQ1YTFjOWRjNmViZGJiMmIyYTg2YzlmMGYzCi0gYjAyZDJhNWE3 OTJiZTQ0NWExYzlkYzZlYmRiYjJiMmE4NmM5ZjBmMyBSZW5hbWUgUkhfRElTQUJMRV9ERVBSRUNB VEVEIHRvIFJIRUxfRElGRkVSRU5DRVMKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0LzU5ZWJhMzA4OGNmZWFjYWRjYTEzMmUyNDAzMzZkMzViZGNlMjE4 NGIKKyA1OWViYTMwODhjZmVhY2FkY2ExMzJlMjQwMzM2ZDM1YmRjZTIxODRiIGtBQkk6IEFkZCBn ZW5lcmljIGtBQkkgbWFjcm9zIHRvIHVzZSBmb3Iga0FCSSB3b3JrYXJvdW5kcwogCi1odHRwczov L2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC8zNWYwOTk3MGI4Mjdi ZjdlZTlkMDk2ZTllYjJlNTYxYmFmODFmYjM1Ci0gMzVmMDk5NzBiODI3YmY3ZWU5ZDA5NmU5ZWIy ZTU2MWJhZjgxZmIzNSBzMzkwOiBMb2NrIGRvd24gdGhlIGtlcm5lbCB3aGVuIHRoZSBJUEwgc2Vj dXJlIGZsYWcgaXMgc2V0CitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFy ay8tL2NvbW1pdC9iMThiZTJhODc3MjQ1ZGE3MmQyZTY2Mjc5ZWUzYWYwNjM5YmZjYmNmCisgYjE4 YmUyYTg3NzI0NWRhNzJkMmU2NjI3OWVlM2FmMDYzOWJmY2JjZiBhZGQgcGNpX2h3X3ZlbmRvcl9z dGF0dXMoKQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2Nv bW1pdC8zM2UwMzc5MGUzMTM4N2IwYWI2ZGQxZjM2NTFjMjQ1YmE1YmViMzliCi0gMzNlMDM3OTBl MzEzODdiMGFiNmRkMWYzNjUxYzI0NWJhNWJlYjM5YiBlZmk6IExvY2sgZG93biB0aGUga2VybmVs IGlmIGJvb3RlZCBpbiBzZWN1cmUgYm9vdCBtb2RlCitodHRwczovL2dpdGxhYi5jb20vY2tpLXBy b2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC80YmI0NmMyYzU1NmI4NzU0OGRmNmRjMzRkMjYyNTEz N2MxZjFiOTA2CisgNGJiNDZjMmM1NTZiODc1NDhkZjZkYzM0ZDI2MjUxMzdjMWYxYjkwNiBhaGNp OiB0aHVuZGVyeDI6IEZpeCBmb3IgZXJyYXRhIHRoYXQgYWZmZWN0cyBzdG9wIGVuZ2luZQogCi1o dHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC85ZmM4NDE3 MjBkMGRiNWYwNTZhYzJkNWJjMmM3ZjU4YTk4YWZkYzY1Ci0gOWZjODQxNzIwZDBkYjVmMDU2YWMy ZDViYzJjN2Y1OGE5OGFmZGM2NSBlZmk6IEFkZCBhbiBFRklfU0VDVVJFX0JPT1QgZmxhZyB0byBp bmRpY2F0ZSBzZWN1cmUgYm9vdCBtb2RlCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qv a2VybmVsLWFyay8tL2NvbW1pdC9iYmExYTRjNmRhOWI2MjM0Y2I0ODBiZTI2Y2JhNDg1N2I0ZjAw YjhkCisgYmJhMWE0YzZkYTliNjIzNGNiNDgwYmUyNmNiYTQ4NTdiNGYwMGI4ZCBWdWxjYW46IEFI Q0kgUENJIGJhciBmaXggZm9yIEJyb2FkY29tIFZ1bGNhbiBlYXJseSBzaWxpY29uCiAKLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzUwNDNlMjg4MjM0 MDYxOTYxY2FlZWNjZWNhZTFiZGI4YWIzM2MwNDcKLSA1MDQzZTI4ODIzNDA2MTk2MWNhZWVjY2Vj YWUxYmRiOGFiMzNjMDQ3IHNlY3VyaXR5OiBsb2NrZG93bjogZXhwb3NlIGEgaG9vayB0byBsb2Nr IHRoZSBrZXJuZWwgZG93bgoraHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1h cmsvLS9jb21taXQvZDE0YzM4MDM1YjhhMzhjY2I4MTA4MTA4MzRkZjk1ODcwZGU0YzA3OQorIGQx NGMzODAzNWI4YTM4Y2NiODEwODEwODM0ZGY5NTg3MGRlNGMwNzkgYnBmOiBzZXQgdW5wcml2aWxl Z2VkX2JwZl9kaXNhYmxlZCB0byAxIGJ5IGRlZmF1bHQsIGFkZCBhIGJvb3QgcGFyYW1ldGVyCiAK LWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzE3OTk4 MDg2ODk1NTQ5N2FlN2Q1OWEwNmJhMTg4OTQ4MGQyYmJlMDMKLSAxNzk5ODA4Njg5NTU0OTdhZTdk NTlhMDZiYTE4ODk0ODBkMmJiZTAzIE1ha2UgZ2V0X2NlcnRfbGlzdCgpIHVzZSBlZmlfc3RhdHVz X3RvX3N0cigpIHRvIHByaW50IGVycm9yIG1lc3NhZ2VzLgoraHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYTNiNzBkNDgwMGI4MjJhM2E5YThkMjA3MjA4 MTRhMmUzYjE3N2UyMgorIGEzYjcwZDQ4MDBiODIyYTNhOWE4ZDIwNzIwODE0YTJlM2IxNzdlMjIg YWRkIFJlZCBIYXQtc3BlY2lmaWMgdGFpbnQgZmxhZ3MKIAotaHR0cHM6Ly9naXRsYWIuY29tL2Nr aS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvY2Y1ZjZhMjU2MjAyYzVjYmQ0ZjBkZDNlNjhm ZjE3NDgzMDI0ZTMyOQotIGNmNWY2YTI1NjIwMmM1Y2JkNGYwZGQzZTY4ZmYxNzQ4MzAyNGUzMjkg QWRkIGVmaV9zdGF0dXNfdG9fc3RyKCkgYW5kIHJld29yayBlZmlfc3RhdHVzX3RvX2VycigpLgor aHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvODQ3NDhj NzQxNDY1ZDJiNmE5ZjA1OWM5Y2JmYzc3MTBhMTc5MDI0OAorIDg0NzQ4Yzc0MTQ2NWQyYjZhOWYw NTljOWNiZmM3NzEwYTE3OTAyNDggdGFncy5zaDogSWdub3JlIHJlZGhhdC9ycG0KIAotaHR0cHM6 Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvMzA5YTQ1MmZiM2Uz OWI3YjQ4YzFlMzY2YzAzZGVlOTE0ZTRhODgzNwotIDMwOWE0NTJmYjNlMzliN2I0OGMxZTM2NmMw M2RlZTkxNGU0YTg4MzcgQWRkIHN1cHBvcnQgZm9yIGRlcHJlY2F0aW5nIHByb2Nlc3NvcnMKK2h0 dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2Y5N2QyNzI2 Y2ZkMjdjMWUzMmNlOGE0ODJiYmI5OTk1YThkOGNmM2IKKyBmOTdkMjcyNmNmZDI3YzFlMzJjZThh NDgyYmJiOTk5NWE4ZDhjZjNiIHB1dCBSSEVMIGluZm8gaW50byBnZW5lcmF0ZWQgaGVhZGVycwog Ci1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9hY2Vj OGIwNjEwZGRkNjE5ZDg3ZDlmOWE1NTIyYTRiNzZiYmU1OTBhCi0gYWNlYzhiMDYxMGRkZDYxOWQ4 N2Q5ZjlhNTUyMmE0Yjc2YmJlNTkwYSBhcm06IGFhcmNoNjQ6IERyb3AgdGhlIEVYUEVSVCBzZXR0 aW5nIGZyb20gQVJNNjRfRk9SQ0VfNTJCSVQKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVj dC9rZXJuZWwtYXJrLy0vY29tbWl0LzA1ZTQ5MDJlMGRmNDg5NTE4MTFlMWRkNDM4ZjFjMjk4MjBk ZTg0NWMKKyAwNWU0OTAyZTBkZjQ4OTUxODExZTFkZDQzOGYxYzI5ODIwZGU4NDVjIGFhcmNoNjQ6 IGFjcGkgc2NhbjogRml4IHJlZ3Jlc3Npb24gcmVsYXRlZCB0byBYLUdlbmUgVUFSVHMKIAotaHR0 cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYmEwOGEwNGQ3 ZjEyYjdhN2NkYTYzYjQwMTI3MTFhZTUzNDRhMTQ3YQotIGJhMDhhMDRkN2YxMmI3YTdjZGE2M2I0 MDEyNzExYWU1MzQ0YTE0N2EgaW9tbXUvYXJtLXNtbXU6IHdvcmthcm91bmQgRE1BIG1vZGUgaXNz dWVzCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9j YWUzOTcyMTM3NmQxODVjNzdmMTAzZmI5MzVjMDAxNDA3YmRhYjhhCisgY2FlMzk3MjEzNzZkMTg1 Yzc3ZjEwM2ZiOTM1YzAwMTQwN2JkYWI4YSBBQ1BJIC8gaXJxOiBXb3JrYXJvdW5kIGZpcm13YXJl IGlzc3VlIG9uIFgtR2VuZSBiYXNlZCBtNDAwCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJv amVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2U0MzQ3YTZiMTFlNDYwMzU5NzkyMWFmM2VmYzY4YTUx NTcwNTYzMWQKLSBlNDM0N2E2YjExZTQ2MDM1OTc5MjFhZjNlZmM2OGE1MTU3MDU2MzFkIHJoX2th Ymk6IGludHJvZHVjZSBSSF9LQUJJX0VYQ0xVREUKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJv amVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzhjYmZmNWQ4ZGFlZjE0NTNkZTEzZDdmMDc4N2IxZGY5 OGY5ZjljOTUKKyA4Y2JmZjVkOGRhZWYxNDUzZGUxM2Q3ZjA3ODdiMWRmOThmOWY5Yzk1IG1vZHVs ZXM6IGFkZCByaGVsdmVyc2lvbiBNT0RVTEVfSU5GTyB0YWcKIAotaHR0cHM6Ly9naXRsYWIuY29t L2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvOTVmZmI0YjkwYjE1NjdiY2RiN2VmZWEw ZmQxNDRmZTk3YTBlMGRhMgotIDk1ZmZiNGI5MGIxNTY3YmNkYjdlZmVhMGZkMTQ0ZmU5N2EwZTBk YTIgaXBtaTogZG8gbm90IGNvbmZpZ3VyZSBpcG1pIGZvciBIUEUgbTQwMAoraHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvZTYxMjliZmEwZDUwMzA5N2M0 MDdkNTY4MmM1YTBiNjk5OTc5YzU5NgorIGU2MTI5YmZhMGQ1MDMwOTdjNDA3ZDU2ODJjNWEwYjY5 OTk3OWM1OTYgQUNQSTogQVBFSTogYXJtNjQ6IElnbm9yZSBicm9rZW4gSFBFIG1vb25zaG90IEFQ RUkgc3VwcG9ydAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC80YmJhZjRiOWZlZjljNThlZGJkOTU4NjI0Yzc3NjVmYzZkNzAxYjA2Ci0gNGJiYWY0 YjlmZWY5YzU4ZWRiZDk1ODYyNGM3NzY1ZmM2ZDcwMWIwNiBrQUJJOiBBZGQgZ2VuZXJpYyBrQUJJ IG1hY3JvcyB0byB1c2UgZm9yIGtBQkkgd29ya2Fyb3VuZHMKK2h0dHBzOi8vZ2l0bGFiLmNvbS9j a2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzRiMWNkZGQ0YWNlMTc5MGY1Njk2YzczYzI3 MTlkZDM5M2M2N2E3ZGMKKyA0YjFjZGRkNGFjZTE3OTBmNTY5NmM3M2MyNzE5ZGQzOTNjNjdhN2Rj IEFkZCBSZWQgSGF0IHRhaW50aW5nCiAKLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0LzZhMTVlNWQ5YmUxOTY2NzMxMzk1NjliMDk0ZjA1MTI3ZWEyNGM4 ZDEKLSA2YTE1ZTVkOWJlMTk2NjczMTM5NTY5YjA5NGYwNTEyN2VhMjRjOGQxIGFkZCBwY2lfaHdf dmVuZG9yX3N0YXR1cygpCitodHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFy ay8tL2NvbW1pdC9kMTE3NmU3Y2ZiZjJmM2UzMjY0NjllNmNmM2MxZTEyM2Y3OTdiMmFiCisgZDEx NzZlN2NmYmYyZjNlMzI2NDY5ZTZjZjNjMWUxMjNmNzk3YjJhYiBJbnRyb2R1Y2UgQ09ORklHX1JI X0RJU0FCTEVfREVQUkVDQVRFRAogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2Vy bmVsLWFyay8tL2NvbW1pdC85YzBkYmQyZjhlYjM5MjE2YjhmZTdlNWFiYmI0ZjkxY2U4MjFiYmQ1 Ci0gOWMwZGJkMmY4ZWIzOTIxNmI4ZmU3ZTVhYmJiNGY5MWNlODIxYmJkNSBhaGNpOiB0aHVuZGVy eDI6IEZpeCBmb3IgZXJyYXRhIHRoYXQgYWZmZWN0cyBzdG9wIGVuZ2luZQoraHR0cHM6Ly9naXRs YWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9jb21taXQvYzViYmMzZmZkZmY4MDM0ZGNj ZjY4NjIzYjA3MTVlOWY5ODAzNGNhNQorIGM1YmJjM2ZmZGZmODAzNGRjY2Y2ODYyM2IwNzE1ZTlm OTgwMzRjYTUgUHVsbCB0aGUgUkhFTCB2ZXJzaW9uIGRlZmluZXMgb3V0IG9mIHRoZSBNYWtlZmls ZQogCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC83 NTFkNmUzMmIxMjk4NTFmYjZkZjU4MGFmZTFiY2E5OGE1OWRhNjBmCi0gNzUxZDZlMzJiMTI5ODUx ZmI2ZGY1ODBhZmUxYmNhOThhNTlkYTYwZiBWdWxjYW46IEFIQ0kgUENJIGJhciBmaXggZm9yIEJy b2FkY29tIFZ1bGNhbiBlYXJseSBzaWxpY29uCi0KLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJv amVjdC9rZXJuZWwtYXJrLy0vY29tbWl0L2JlZmMzNDEyZWNjNzkyOWNlZmVhYzE1ODhmNWQyYzAw MjJlZmE5MDIKLSBiZWZjMzQxMmVjYzc5MjljZWZlYWMxNTg4ZjVkMmMwMDIyZWZhOTAyIGJwZjog c2V0IHVucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQgdG8gMSBieSBkZWZhdWx0LCBhZGQgYSBib290 IHBhcmFtZXRlcgotCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC8yZTVkZTNmMDk3MjBhOGIxYTQ1M2JlYmM3MzQzMTRjYmMyYjRiNjdlCi0gMmU1ZGUz ZjA5NzIwYThiMWE0NTNiZWJjNzM0MzE0Y2JjMmI0YjY3ZSBhZGQgUmVkIEhhdC1zcGVjaWZpYyB0 YWludCBmbGFncwotCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8t L2NvbW1pdC82MjllMDE4NWQwNTg2N2E1MTRiZWM1ODFkYWZmMjE0ZWFkNjI3NWY5Ci0gNjI5ZTAx ODVkMDU4NjdhNTE0YmVjNTgxZGFmZjIxNGVhZDYyNzVmOSB0YWdzLnNoOiBJZ25vcmUgcmVkaGF0 L3JwbQotCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1p dC9kN2FjMTBlNWUzNjAyMmI0NmMxYTg1NmZjOTljZDg3NDI4NDEzYTdlCi0gZDdhYzEwZTVlMzYw MjJiNDZjMWE4NTZmYzk5Y2Q4NzQyODQxM2E3ZSBwdXQgUkhFTCBpbmZvIGludG8gZ2VuZXJhdGVk IGhlYWRlcnMKLQotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsvLS9j b21taXQvYWJlNDA2ODU2MzZhOTVhYWUzYzkxMmM2Y2YxYWRmM2ExZGEyNGRmMgotIGFiZTQwNjg1 NjM2YTk1YWFlM2M5MTJjNmNmMWFkZjNhMWRhMjRkZjIgYWFyY2g2NDogYWNwaSBzY2FuOiBGaXgg cmVncmVzc2lvbiByZWxhdGVkIHRvIFgtR2VuZSBVQVJUcwotCi1odHRwczovL2dpdGxhYi5jb20v Y2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC84NWM0NDQ4MzA2MmMzNmFjNWVmOGRmNjdi YTM4MWQzMjM4OTc0NGFjCi0gODVjNDQ0ODMwNjJjMzZhYzVlZjhkZjY3YmEzODFkMzIzODk3NDRh YyBBQ1BJIC8gaXJxOiBXb3JrYXJvdW5kIGZpcm13YXJlIGlzc3VlIG9uIFgtR2VuZSBiYXNlZCBt NDAwCi0KLWh0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0 LzFmMmViM2ZiMmQxZjNjNTk2YTI0YTdiYWU5NjIzYzIwZjlhN2VlMDAKLSAxZjJlYjNmYjJkMWYz YzU5NmEyNGE3YmFlOTYyM2MyMGY5YTdlZTAwIG1vZHVsZXM6IGFkZCByaGVsdmVyc2lvbiBNT0RV TEVfSU5GTyB0YWcKLQotaHR0cHM6Ly9naXRsYWIuY29tL2NraS1wcm9qZWN0L2tlcm5lbC1hcmsv LS9jb21taXQvNzMyNzk1ZWNlMjUzNjgzZDUyNjRlNmY0OTg3MzUzOWVhOGFlMmFjMQotIDczMjc5 NWVjZTI1MzY4M2Q1MjY0ZTZmNDk4NzM1MzllYThhZTJhYzEgQUNQSTogQVBFSTogYXJtNjQ6IEln bm9yZSBicm9rZW4gSFBFIG1vb25zaG90IEFQRUkgc3VwcG9ydAotCi1odHRwczovL2dpdGxhYi5j b20vY2tpLXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC9kZmE5ZTQ3NjdjZTA0Yzk2NzFjZWQ0 ZWY2N2VjNGY2NWM4NDUwMmQ3Ci0gZGZhOWU0NzY3Y2UwNGM5NjcxY2VkNGVmNjdlYzRmNjVjODQ1 MDJkNyBBZGQgUmVkIEhhdCB0YWludGluZwotCi1odHRwczovL2dpdGxhYi5jb20vY2tpLXByb2pl Y3Qva2VybmVsLWFyay8tL2NvbW1pdC8yNTJhM2VjNTNiZWY1NzhmNTg5MWU0Y2Y3OTljYTVmMzI5 MjcyZjUyCi0gMjUyYTNlYzUzYmVmNTc4ZjU4OTFlNGNmNzk5Y2E1ZjMyOTI3MmY1MiBJbnRyb2R1 Y2UgQ09ORklHX1JIX0RJU0FCTEVfREVQUkVDQVRFRAotCi1odHRwczovL2dpdGxhYi5jb20vY2tp LXByb2plY3Qva2VybmVsLWFyay8tL2NvbW1pdC82NGUyNDgxNWJmMmI3ZWQzYTcxYjdhYzAxYmZi ZjhlOTRkMzk0ZjIzCi0gNjRlMjQ4MTViZjJiN2VkM2E3MWI3YWMwMWJmYmY4ZTk0ZDM5NGYyMyBQ dWxsIHRoZSBSSEVMIHZlcnNpb24gZGVmaW5lcyBvdXQgb2YgdGhlIE1ha2VmaWxlCi0KLWh0dHBz Oi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9rZXJuZWwtYXJrLy0vY29tbWl0LzljNWY3NWQ3NmVl NGE3Y2E1NzhjZDY0NTA1MTI2OWY0YzViOTRkMWQKLSA5YzVmNzVkNzZlZTRhN2NhNTc4Y2Q2NDUw NTEyNjlmNGM1Yjk0ZDFkIFtpbml0aWFsIGNvbW1pdF0gQWRkIFJlZCBIYXQgdmFyaWFibGVzIGlu IHRoZSB0b3AgbGV2ZWwgbWFrZWZpbGUKK2h0dHBzOi8vZ2l0bGFiLmNvbS9ja2ktcHJvamVjdC9r ZXJuZWwtYXJrLy0vY29tbWl0L2QwY2M1YWU3YTBkMzA1YzFlMTVhMGE1MzlmYWVhOWVhMTFhZjI4 NjgKKyBkMGNjNWFlN2EwZDMwNWMxZTE1YTBhNTM5ZmFlYTllYTExYWYyODY4IFtpbml0aWFsIGNv bW1pdF0gQWRkIFJlZCBIYXQgdmFyaWFibGVzIGluIHRoZSB0b3AgbGV2ZWwgbWFrZWZpbGUKIAoK ZGlmZiAtLWdpdCBhL2tlcm5lbC1hYXJjaDY0LTE2ay1kZWJ1Zy1mZWRvcmEuY29uZmlnIGIva2Vy bmVsLWFhcmNoNjQtMTZrLWRlYnVnLWZlZG9yYS5jb25maWcKaW5kZXggODZlNDE2Mi4uNTBlNDYy OCAxMDA2NDQKLS0tIGEva2VybmVsLWFhcmNoNjQtMTZrLWRlYnVnLWZlZG9yYS5jb25maWcKKysr IGIva2VybmVsLWFhcmNoNjQtMTZrLWRlYnVnLWZlZG9yYS5jb25maWcKQEAgLTkyNiw3ICs5MjYs NyBAQCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJ R19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNl dAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NP TkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVf RU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkK QEAgLTE3MTYsNiArMTcxNiw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZ UFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENP TkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9f TElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklU X1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklH X0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtF MlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLWFhcmNoNjQtMTZrLWZlZG9yYS5j b25maWcgYi9rZXJuZWwtYWFyY2g2NC0xNmstZmVkb3JhLmNvbmZpZwppbmRleCAyYjU0ZTE1Li4w MGZhMzFjIDEwMDY0NAotLS0gYS9rZXJuZWwtYWFyY2g2NC0xNmstZmVkb3JhLmNvbmZpZworKysg Yi9rZXJuZWwtYWFyY2g2NC0xNmstZmVkb3JhLmNvbmZpZwpAQCAtOTI2LDcgKzkyNiw3IEBAIENP TkZJR19CTEtfREVWPXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19E RVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENP TkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JM S19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBU SU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTcx Niw2ICsxNzE2LDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JC NT1tCiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NS WVBUT19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVT X0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1t CiAjIENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRP X0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5J VF9URVNUPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC02NGstZGVidWctcmhlbC5jb25m aWcgYi9rZXJuZWwtYWFyY2g2NC02NGstZGVidWctcmhlbC5jb25maWcKaW5kZXggY2RhYTY2Zi4u MTU3Y2M4NCAxMDA2NDQKLS0tIGEva2VybmVsLWFhcmNoNjQtNjRrLWRlYnVnLXJoZWwuY29uZmln CisrKyBiL2tlcm5lbC1hYXJjaDY0LTY0ay1kZWJ1Zy1yaGVsLmNvbmZpZwpAQCAtNzM5LDcgKzcz OSw4IEBAIENPTkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBu b3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNU SU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0 CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5M SU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9N UT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0xMzc4LDYgKzEzNzksOCBAQCBDT05GSUdfQ1JZUFRP X0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NF TEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRf VEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NS WVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hN QVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBD T05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTY0OSw2ICsxNjUyLDcg QEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1t CiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09O RklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAt NDIyMCw2ICs0MjI0LDcgQEAgQ09ORklHX01NQ19BUk1NTUNJPW0KIENPTkZJR19NTUNfQkxPQ0s9 bQogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJ R19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiBD T05GSUdfTU1DX0RXX0JMVUVGSUVMRD1tCiAjIENPTkZJR19NTUNfRFdfRVhZTk9TIGlzIG5vdCBz ZXQKQEAgLTYyODksNiArNjI5NCw3IEBAIENPTkZJR19TQ1NJX1NQSV9BVFRSUz1tCiBDT05GSUdf U0NTSV9TUlBfQVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlzIG5vdCBzZXQKICMgQ09ORklH X1NDU0lfU1lNNTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdfU0NTSV9VRlNfQ1JZUFRPIGlz IG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lf VUZTX0hXTU9OIGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJTz1tCgpkaWZmIC0tZ2l0IGEv a2VybmVsLWFhcmNoNjQtNjRrLXJoZWwuY29uZmlnIGIva2VybmVsLWFhcmNoNjQtNjRrLXJoZWwu Y29uZmlnCmluZGV4IGE1MmVlN2YuLjIwMGZmMTggMTAwNjQ0Ci0tLSBhL2tlcm5lbC1hYXJjaDY0 LTY0ay1yaGVsLmNvbmZpZworKysgYi9rZXJuZWwtYWFyY2g2NC02NGstcmhlbC5jb25maWcKQEAg LTczOSw3ICs3MzksOCBAQCBDT05GSUdfQkxLX0RFVj15CiAjIENPTkZJR19CTEtfREVWX1pPTkVE X0xPT1AgaXMgbm90IHNldAogQ09ORklHX0JMS19ERVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VS Uk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04g aXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CitDT05G SUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklH X0JMS19XQlRfTVE9eQogQ09ORklHX0JMS19XQlQ9eQpAQCAtMTM3OCw2ICsxMzc5LDggQEAgQ09O RklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1tCiAjIENPTkZJR19DUllQ VE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQUVTX0NCQ19N QUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0NDTV9LVU5JVF9URVNUPW0K K0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAjIENPTkZJR19DUllQVE9f TElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJCX0tVTklU X1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9URVNUPW0KQEAgLTE2NDEs NiArMTY0NCw3IEBAIENPTkZJR19ETV9ERUxBWT1tCiBDT05GSUdfRE1fRVJBPW0KIENPTkZJR19E TV9GTEFLRVk9bQogQ09ORklHX0RNSUlEPXkKKyMgQ09ORklHX0RNX0lOTElORUNSWVBUIGlzIG5v dCBzZXQKIENPTkZJR19ETV9JTlRFR1JJVFk9bQogQ09ORklHX0RNSV9TWVNGUz15CiBDT05GSUdf RE1JPXkKQEAgLTQxOTcsNiArNDIwMSw3IEBAIENPTkZJR19NTUNfQVJNTU1DST1tCiBDT05GSUdf TU1DX0JMT0NLPW0KIENPTkZJR19NTUNfQkxPQ0tfTUlOT1JTPTgKIENPTkZJR19NTUNfQ0I3MTA9 bQorIyBDT05GSUdfTU1DX0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfREVCVUcgaXMg bm90IHNldAogQ09ORklHX01NQ19EV19CTFVFRklFTEQ9bQogIyBDT05GSUdfTU1DX0RXX0VYWU5P UyBpcyBub3Qgc2V0CkBAIC02MjYyLDYgKzYyNjcsNyBAQCBDT05GSUdfU0NTSV9TUElfQVRUUlM9 bQogQ09ORklHX1NDU0lfU1JQX0FUVFJTPW0KICMgQ09ORklHX1NDU0lfU1RFWCBpcyBub3Qgc2V0 CiAjIENPTkZJR19TQ1NJX1NZTTUzQzhYWF8yIGlzIG5vdCBzZXQKKyMgQ09ORklHX1NDU0lfVUZT X0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1VGU0hDRCBpcyBub3Qgc2V0CiAjIENP TkZJR19TQ1NJX1VGU19IV01PTiBpcyBub3Qgc2V0CiBDT05GSUdfU0NTSV9WSVJUSU89bQoKZGlm ZiAtLWdpdCBhL2tlcm5lbC1hYXJjaDY0LWRlYnVnLWZlZG9yYS5jb25maWcgYi9rZXJuZWwtYWFy Y2g2NC1kZWJ1Zy1mZWRvcmEuY29uZmlnCmluZGV4IDFkZDhmY2QuLjEyNGUzOWMgMTAwNjQ0Ci0t LSBhL2tlcm5lbC1hYXJjaDY0LWRlYnVnLWZlZG9yYS5jb25maWcKKysrIGIva2VybmVsLWFhcmNo NjQtZGVidWctZmVkb3JhLmNvbmZpZwpAQCAtOTI2LDcgKzkyNiw3IEBAIENPTkZJR19CTEtfREVW PXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19ERVZfWk9ORUQ9eQog IyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19CTEtfSU5M SU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5D UllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJ R19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTcxNiw2ICsxNzE2LDgg QEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1tCiAjIENPTkZJ R19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQUVT X0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0NDTV9LVU5JVF9U RVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAjIENPTkZJR19D UllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJC X0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9URVNUPW0KCmRp ZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC1kZWJ1Zy1yaGVsLmNvbmZpZyBiL2tlcm5lbC1hYXJj aDY0LWRlYnVnLXJoZWwuY29uZmlnCmluZGV4IGU1ZGY5MzIuLjk3Y2I5ZDEgMTAwNjQ0Ci0tLSBh L2tlcm5lbC1hYXJjaDY0LWRlYnVnLXJoZWwuY29uZmlnCisrKyBiL2tlcm5lbC1hYXJjaDY0LWRl YnVnLXJoZWwuY29uZmlnCkBAIC03MzcsNyArNzM3LDggQEAgQ09ORklHX0JMS19ERVY9eQogIyBD T05GSUdfQkxLX0RFVl9aT05FRF9MT09QIGlzIG5vdCBzZXQKIENPTkZJR19CTEtfREVWX1pPTkVE PXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxL X0lOTElORV9FTkNSWVBUSU9OIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJ T05fRkFMTEJBQ0s9eQorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxL X1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKIENPTkZJR19CTEtfV0JUPXkKQEAgLTEz NzYsNiArMTM3Nyw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tS QjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19D UllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FF U19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9 bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBU T19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VO SVRfVEVTVD1tCkBAIC0xNjQ3LDYgKzE2NTAsNyBAQCBDT05GSUdfRE1fREVMQVk9bQogQ09ORklH X0RNX0VSQT1tCiBDT05GSUdfRE1fRkxBS0VZPW0KIENPTkZJR19ETUlJRD15CisjIENPTkZJR19E TV9JTkxJTkVDUllQVCBpcyBub3Qgc2V0CiBDT05GSUdfRE1fSU5URUdSSVRZPW0KIENPTkZJR19E TUlfU1lTRlM9eQogQ09ORklHX0RNST15CkBAIC00MjE4LDYgKzQyMjIsNyBAQCBDT05GSUdfTU1D X0FSTU1NQ0k9bQogQ09ORklHX01NQ19CTE9DSz1tCiBDT05GSUdfTU1DX0JMT0NLX01JTk9SUz04 CiBDT05GSUdfTU1DX0NCNzEwPW0KKyMgQ09ORklHX01NQ19DUllQVE8gaXMgbm90IHNldAogIyBD T05GSUdfTU1DX0RFQlVHIGlzIG5vdCBzZXQKIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEPW0KICMg Q09ORklHX01NQ19EV19FWFlOT1MgaXMgbm90IHNldApAQCAtNjI4Niw2ICs2MjkxLDcgQEAgQ09O RklHX1NDU0lfU1BJX0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19T Q1NJX1NURVggaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0 CisjIENPTkZJR19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNI Q0QgaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklH X1NDU0lfVklSVElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC1mZWRvcmEuY29uZmln IGIva2VybmVsLWFhcmNoNjQtZmVkb3JhLmNvbmZpZwppbmRleCBjNzkxOTg1Li40OThlMDY1IDEw MDY0NAotLS0gYS9rZXJuZWwtYWFyY2g2NC1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1hYXJj aDY0LWZlZG9yYS5jb25maWcKQEAgLTkyNiw3ICs5MjYsNyBAQCBDT05GSUdfQkxLX0RFVj15CiBD T05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09O RklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9F TkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJ T05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxL X1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAgLTE3MTYsNiArMTcxNiw4IEBAIENP TkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZ UFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNf TUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1t CitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRP X0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5J VF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0t Z2l0IGEva2VybmVsLWFhcmNoNjQtcmhlbC5jb25maWcgYi9rZXJuZWwtYWFyY2g2NC1yaGVsLmNv bmZpZwppbmRleCAyNDUzYjJkLi4yM2M0ODBmIDEwMDY0NAotLS0gYS9rZXJuZWwtYWFyY2g2NC1y aGVsLmNvbmZpZworKysgYi9rZXJuZWwtYWFyY2g2NC1yaGVsLmNvbmZpZwpAQCAtNzM3LDcgKzcz Nyw4IEBAIENPTkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBu b3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNU SU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0 CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5M SU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9N UT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0xMzc2LDYgKzEzNzcsOCBAQCBDT05GSUdfQ1JZUFRP X0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NF TEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRf VEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NS WVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hN QVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBD T05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTYzOSw2ICsxNjQyLDcg QEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1t CiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09O RklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAt NDE5NSw2ICs0MTk5LDcgQEAgQ09ORklHX01NQ19BUk1NTUNJPW0KIENPTkZJR19NTUNfQkxPQ0s9 bQogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJ R19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiBD T05GSUdfTU1DX0RXX0JMVUVGSUVMRD1tCiAjIENPTkZJR19NTUNfRFdfRVhZTk9TIGlzIG5vdCBz ZXQKQEAgLTYyNTksNiArNjI2NCw3IEBAIENPTkZJR19TQ1NJX1NQSV9BVFRSUz1tCiBDT05GSUdf U0NTSV9TUlBfQVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlzIG5vdCBzZXQKICMgQ09ORklH X1NDU0lfU1lNNTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdfU0NTSV9VRlNfQ1JZUFRPIGlz IG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lf VUZTX0hXTU9OIGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJTz1tCgpkaWZmIC0tZ2l0IGEv a2VybmVsLWFhcmNoNjQtcnQtNjRrLWRlYnVnLWZlZG9yYS5jb25maWcgYi9rZXJuZWwtYWFyY2g2 NC1ydC02NGstZGVidWctZmVkb3JhLmNvbmZpZwppbmRleCA3ZGVlYjU3Li40ODlkN2MyIDEwMDY0 NAotLS0gYS9rZXJuZWwtYWFyY2g2NC1ydC02NGstZGVidWctZmVkb3JhLmNvbmZpZworKysgYi9r ZXJuZWwtYWFyY2g2NC1ydC02NGstZGVidWctZmVkb3JhLmNvbmZpZwpAQCAtOTI5LDcgKzkyOSw3 IEBAIENPTkZJR19CTEtfREVWPXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklH X0JMS19ERVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0 Ci0jIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09O RklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9F TkNSWVBUSU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpA QCAtMTcyMCw2ICsxNzIwLDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQ VE9fS1JCNT1tCiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09O RklHX0NSWVBUT19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19M SUJfQUVTX0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRf VEVTVD1tCiAjIENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdf Q1JZUFRPX0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0Uy U19LVU5JVF9URVNUPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC1ydC02NGstZGVidWct cmhlbC5jb25maWcgYi9rZXJuZWwtYWFyY2g2NC1ydC02NGstZGVidWctcmhlbC5jb25maWcKaW5k ZXggNWFmNjgxNi4uMjFhZDc0ZCAxMDA2NDQKLS0tIGEva2VybmVsLWFhcmNoNjQtcnQtNjRrLWRl YnVnLXJoZWwuY29uZmlnCisrKyBiL2tlcm5lbC1hYXJjaDY0LXJ0LTY0ay1kZWJ1Zy1yaGVsLmNv bmZpZwpAQCAtNzQwLDcgKzc0MCw4IEBAIENPTkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19E RVZfWk9ORURfTE9PUCBpcyBub3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJ R19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5D UllQVElPTiBpcyBub3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNL PXkKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15 CiBDT05GSUdfQkxLX1dCVF9NUT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0xMzgwLDYgKzEzODEs OCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09O RklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9B RVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklU X1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklH X0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtF MkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpA QCAtMTY1Miw2ICsxNjU1LDcgQEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQog Q09ORklHX0RNX0ZMQUtFWT1tCiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZ UFQgaXMgbm90IHNldAogQ09ORklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkK IENPTkZJR19ETUk9eQpAQCAtNDI2Miw2ICs0MjY2LDcgQEAgQ09ORklHX01NQ19BUk1NTUNJPW0K IENPTkZJR19NTUNfQkxPQ0s9bQogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01N Q19DQjcxMD1tCisjIENPTkZJR19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19E RUJVRyBpcyBub3Qgc2V0CiBDT05GSUdfTU1DX0RXX0JMVUVGSUVMRD1tCiAjIENPTkZJR19NTUNf RFdfRVhZTk9TIGlzIG5vdCBzZXQKQEAgLTYzMzQsNiArNjMzOSw3IEBAIENPTkZJR19TQ1NJX1NQ SV9BVFRSUz1tCiBDT05GSUdfU0NTSV9TUlBfQVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlz IG5vdCBzZXQKICMgQ09ORklHX1NDU0lfU1lNNTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdf U0NTSV9VRlNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBz ZXQKICMgQ09ORklHX1NDU0lfVUZTX0hXTU9OIGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJ Tz1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLWFhcmNoNjQtcnQtNjRrLWZlZG9yYS5jb25maWcgYi9r ZXJuZWwtYWFyY2g2NC1ydC02NGstZmVkb3JhLmNvbmZpZwppbmRleCA1ZGEyN2U2Li4yM2QwZGU3 IDEwMDY0NAotLS0gYS9rZXJuZWwtYWFyY2g2NC1ydC02NGstZmVkb3JhLmNvbmZpZworKysgYi9r ZXJuZWwtYWFyY2g2NC1ydC02NGstZmVkb3JhLmNvbmZpZwpAQCAtOTI5LDcgKzkyOSw3IEBAIENP TkZJR19CTEtfREVWPXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19E RVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENP TkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JM S19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBU SU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTcy MCw2ICsxNzIwLDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JC NT1tCiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NS WVBUT19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVT X0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1t CiAjIENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRP X0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5J VF9URVNUPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC1ydC02NGstcmhlbC5jb25maWcg Yi9rZXJuZWwtYWFyY2g2NC1ydC02NGstcmhlbC5jb25maWcKaW5kZXggOGQ2ZmUxOC4uNGI0ZDM2 NyAxMDA2NDQKLS0tIGEva2VybmVsLWFhcmNoNjQtcnQtNjRrLXJoZWwuY29uZmlnCisrKyBiL2tl cm5lbC1hYXJjaDY0LXJ0LTY0ay1yaGVsLmNvbmZpZwpAQCAtNzQwLDcgKzc0MCw4IEBAIENPTkZJ R19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBub3Qgc2V0CiBDT05G SUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBz ZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0CitDT05GSUdfQkxL X0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJ T049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CiBDT05GSUdf QkxLX1dCVD15CkBAIC0xMzgwLDYgKzEzODEsOCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9bQog Q09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBpcyBu b3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitDT05G SUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVT X0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBz ZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRP X0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTY0NCw2ICsxNjQ3LDcgQEAgQ09ORklHX0RN X0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1tCiBDT05GSUdfRE1J SUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09ORklHX0RNX0lOVEVH UklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAtNDIzOSw2ICs0MjQz LDcgQEAgQ09ORklHX01NQ19BUk1NTUNJPW0KIENPTkZJR19NTUNfQkxPQ0s9bQogQ09ORklHX01N Q19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJR19NTUNfQ1JZUFRP IGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiBDT05GSUdfTU1DX0RX X0JMVUVGSUVMRD1tCiAjIENPTkZJR19NTUNfRFdfRVhZTk9TIGlzIG5vdCBzZXQKQEAgLTYzMDcs NiArNjMxMiw3IEBAIENPTkZJR19TQ1NJX1NQSV9BVFRSUz1tCiBDT05GSUdfU0NTSV9TUlBfQVRU UlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfU1lNNTND OFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdfU0NTSV9VRlNfQ1JZUFRPIGlzIG5vdCBzZXQKICMg Q09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTX0hXTU9OIGlz IG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJTz1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLWFhcmNo NjQtcnQtZGVidWctZmVkb3JhLmNvbmZpZyBiL2tlcm5lbC1hYXJjaDY0LXJ0LWRlYnVnLWZlZG9y YS5jb25maWcKaW5kZXggOTcyMDNkNC4uODE3MGEzZCAxMDA2NDQKLS0tIGEva2VybmVsLWFhcmNo NjQtcnQtZGVidWctZmVkb3JhLmNvbmZpZworKysgYi9rZXJuZWwtYWFyY2g2NC1ydC1kZWJ1Zy1m ZWRvcmEuY29uZmlnCkBAIC05MjYsNyArOTI2LDcgQEAgQ09ORklHX0JMS19ERVY9eQogQ09ORklH X0JMS19ERVZfWk9ORURfTE9PUD1tCiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19C TEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQ VElPTl9GQUxMQkFDSyBpcyBub3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZB TExCQUNLPXkKIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURf T1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CkBAIC0xNzE3LDYgKzE3MTcsOCBAQCBDT05GSUdf Q1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19L UkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1Nf S1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09O RklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJf QkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVT VD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQoKZGlmZiAtLWdpdCBh L2tlcm5lbC1hYXJjaDY0LXJ0LWRlYnVnLXJoZWwuY29uZmlnIGIva2VybmVsLWFhcmNoNjQtcnQt ZGVidWctcmhlbC5jb25maWcKaW5kZXggMzExMDA0Yy4uNGM4NjRkYiAxMDA2NDQKLS0tIGEva2Vy bmVsLWFhcmNoNjQtcnQtZGVidWctcmhlbC5jb25maWcKKysrIGIva2VybmVsLWFhcmNoNjQtcnQt ZGVidWctcmhlbC5jb25maWcKQEAgLTczNyw3ICs3MzcsOCBAQCBDT05GSUdfQkxLX0RFVj15CiAj IENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1AgaXMgbm90IHNldAogQ09ORklHX0JMS19ERVZfWk9O RUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19C TEtfSU5MSU5FX0VOQ1JZUFRJT04gaXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQ VElPTl9GQUxMQkFDSz15CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJR19C TEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQogQ09ORklHX0JMS19XQlQ9eQpAQCAt MTM3Nyw2ICsxMzc4LDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9f S1JCNT1tCiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklH X0NSWVBUT19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJf QUVTX0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVT VD1tCiAjIENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZ UFRPX0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19L VU5JVF9URVNUPW0KQEAgLTE2NDksNiArMTY1Miw3IEBAIENPTkZJR19ETV9ERUxBWT1tCiBDT05G SUdfRE1fRVJBPW0KIENPTkZJR19ETV9GTEFLRVk9bQogQ09ORklHX0RNSUlEPXkKKyMgQ09ORklH X0RNX0lOTElORUNSWVBUIGlzIG5vdCBzZXQKIENPTkZJR19ETV9JTlRFR1JJVFk9bQogQ09ORklH X0RNSV9TWVNGUz15CiBDT05GSUdfRE1JPXkKQEAgLTQyNTksNiArNDI2Myw3IEBAIENPTkZJR19N TUNfQVJNTU1DST1tCiBDT05GSUdfTU1DX0JMT0NLPW0KIENPTkZJR19NTUNfQkxPQ0tfTUlOT1JT PTgKIENPTkZJR19NTUNfQ0I3MTA9bQorIyBDT05GSUdfTU1DX0NSWVBUTyBpcyBub3Qgc2V0CiAj IENPTkZJR19NTUNfREVCVUcgaXMgbm90IHNldAogQ09ORklHX01NQ19EV19CTFVFRklFTEQ9bQog IyBDT05GSUdfTU1DX0RXX0VYWU5PUyBpcyBub3Qgc2V0CkBAIC02MzMwLDYgKzYzMzUsNyBAQCBD T05GSUdfU0NTSV9TUElfQVRUUlM9bQogQ09ORklHX1NDU0lfU1JQX0FUVFJTPW0KICMgQ09ORklH X1NDU0lfU1RFWCBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1NZTTUzQzhYWF8yIGlzIG5vdCBz ZXQKKyMgQ09ORklHX1NDU0lfVUZTX0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1VG U0hDRCBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1VGU19IV01PTiBpcyBub3Qgc2V0CiBDT05G SUdfU0NTSV9WSVJUSU89bQoKZGlmZiAtLWdpdCBhL2tlcm5lbC1hYXJjaDY0LXJ0LWZlZG9yYS5j b25maWcgYi9rZXJuZWwtYWFyY2g2NC1ydC1mZWRvcmEuY29uZmlnCmluZGV4IDkyZWZhOTQuLjQw Nzc0NzIgMTAwNjQ0Ci0tLSBhL2tlcm5lbC1hYXJjaDY0LXJ0LWZlZG9yYS5jb25maWcKKysrIGIv a2VybmVsLWFhcmNoNjQtcnQtZmVkb3JhLmNvbmZpZwpAQCAtOTI2LDcgKzkyNiw3IEBAIENPTkZJ R19CTEtfREVWPXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19ERVZf Wk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJ R19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JMS19J TkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9O PXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTcxNyw2 ICsxNzE3LDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1t CiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBU T19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0ND TV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAj IENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJ Ql9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9U RVNUPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtYWFyY2g2NC1ydC1yaGVsLmNvbmZpZyBiL2tlcm5l bC1hYXJjaDY0LXJ0LXJoZWwuY29uZmlnCmluZGV4IGY3ZjlhZTguLmFhNTE4OWQgMTAwNjQ0Ci0t LSBhL2tlcm5lbC1hYXJjaDY0LXJ0LXJoZWwuY29uZmlnCisrKyBiL2tlcm5lbC1hYXJjaDY0LXJ0 LXJoZWwuY29uZmlnCkBAIC03MzcsNyArNzM3LDggQEAgQ09ORklHX0JMS19ERVY9eQogIyBDT05G SUdfQkxLX0RFVl9aT05FRF9MT09QIGlzIG5vdCBzZXQKIENPTkZJR19CTEtfREVWX1pPTkVEPXkK ICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lO TElORV9FTkNSWVBUSU9OIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05f RkFMTEJBQ0s9eQorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NF RF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKIENPTkZJR19CTEtfV0JUPXkKQEAgLTEzNzcs NiArMTM3OCw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9 bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQ VE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19D Q01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQog IyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19M SUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRf VEVTVD1tCkBAIC0xNjQxLDYgKzE2NDQsNyBAQCBDT05GSUdfRE1fREVMQVk9bQogQ09ORklHX0RN X0VSQT1tCiBDT05GSUdfRE1fRkxBS0VZPW0KIENPTkZJR19ETUlJRD15CisjIENPTkZJR19ETV9J TkxJTkVDUllQVCBpcyBub3Qgc2V0CiBDT05GSUdfRE1fSU5URUdSSVRZPW0KIENPTkZJR19ETUlf U1lTRlM9eQogQ09ORklHX0RNST15CkBAIC00MjM2LDYgKzQyNDAsNyBAQCBDT05GSUdfTU1DX0FS TU1NQ0k9bQogQ09ORklHX01NQ19CTE9DSz1tCiBDT05GSUdfTU1DX0JMT0NLX01JTk9SUz04CiBD T05GSUdfTU1DX0NCNzEwPW0KKyMgQ09ORklHX01NQ19DUllQVE8gaXMgbm90IHNldAogIyBDT05G SUdfTU1DX0RFQlVHIGlzIG5vdCBzZXQKIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEPW0KICMgQ09O RklHX01NQ19EV19FWFlOT1MgaXMgbm90IHNldApAQCAtNjMwMyw2ICs2MzA4LDcgQEAgQ09ORklH X1NDU0lfU1BJX0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19TQ1NJ X1NURVggaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0Cisj IENPTkZJR19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0Qg aXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1ND U0lfVklSVElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtcHBjNjRsZS1kZWJ1Zy1mZWRvcmEuY29u ZmlnIGIva2VybmVsLXBwYzY0bGUtZGVidWctZmVkb3JhLmNvbmZpZwppbmRleCA3YzIzZGM2Li43 MTQ2MTlkIDEwMDY0NAotLS0gYS9rZXJuZWwtcHBjNjRsZS1kZWJ1Zy1mZWRvcmEuY29uZmlnCisr KyBiL2tlcm5lbC1wcGM2NGxlLWRlYnVnLWZlZG9yYS5jb25maWcKQEAgLTU4OCw3ICs1ODgsNyBA QCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19C TEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAot IyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJ R19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5D UllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAg LTExNjcsNiArMTE2Nyw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRP X0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJ R19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElC X0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RF U1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NS WVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNf S1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXBwYzY0bGUtZGVidWctcmhlbC5jb25m aWcgYi9rZXJuZWwtcHBjNjRsZS1kZWJ1Zy1yaGVsLmNvbmZpZwppbmRleCA4YTNmM2FmLi5hZTVm ZmFjIDEwMDY0NAotLS0gYS9rZXJuZWwtcHBjNjRsZS1kZWJ1Zy1yaGVsLmNvbmZpZworKysgYi9r ZXJuZWwtcHBjNjRsZS1kZWJ1Zy1yaGVsLmNvbmZpZwpAQCAtNTM2LDcgKzUzNiw4IEBAIENPTkZJ R19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBub3Qgc2V0CiBDT05G SUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBz ZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0CitDT05GSUdfQkxL X0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJ T049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CiBDT05GSUdf QkxLX1dCVD15CkBAIC0xMTAyLDYgKzExMDMsOCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9bQog Q09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBpcyBu b3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitDT05G SUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVT X0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBz ZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRP X0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTM2Myw2ICsxMzY2LDcgQEAgQ09ORklHX0RN X0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1tCiBDT05GSUdfRE1J SUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09ORklHX0RNX0lOVEVH UklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAtMzgyMSw2ICszODI1 LDcgQEAgQ09ORklHX01MWFNXX1NQRUNUUlVNPW0KIENPTkZJR19NTUNfQkxPQ0s9bQogQ09ORklH X01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJR19NTUNfQ1JZ UFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiAjIENPTkZJR19N TUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19EV19FWFlOT1MgaXMgbm90 IHNldApAQCAtNTc1NSw2ICs1NzYwLDcgQEAgQ09ORklHX1NDU0lfU1BJX0FUVFJTPW0KIENPTkZJ R19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19TQ1NJX1NURVggaXMgbm90IHNldAogIyBDT05G SUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0CisjIENPTkZJR19TQ1NJX1VGU19DUllQVE8g aXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0QgaXMgbm90IHNldAogIyBDT05GSUdfU0NT SV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1NDU0lfVklSVElPPW0KCmRpZmYgLS1naXQg YS9rZXJuZWwtcHBjNjRsZS1mZWRvcmEuY29uZmlnIGIva2VybmVsLXBwYzY0bGUtZmVkb3JhLmNv bmZpZwppbmRleCAxNzhmODU4Li4yMGJkZTE4IDEwMDY0NAotLS0gYS9rZXJuZWwtcHBjNjRsZS1m ZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1wcGM2NGxlLWZlZG9yYS5jb25maWcKQEAgLTU4Nyw3 ICs1ODcsNyBAQCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0K IENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMg bm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBz ZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19J TkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JU X01RPXkKQEAgLTExNjYsNiArMTE2Niw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05G SUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBz ZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19D UllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NN X0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAog Q09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElC X0JMQUtFMlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXBwYzY0bGUtcmhlbC5j b25maWcgYi9rZXJuZWwtcHBjNjRsZS1yaGVsLmNvbmZpZwppbmRleCBiODBlYTQxLi4wMjQ5Nzdi IDEwMDY0NAotLS0gYS9rZXJuZWwtcHBjNjRsZS1yaGVsLmNvbmZpZworKysgYi9rZXJuZWwtcHBj NjRsZS1yaGVsLmNvbmZpZwpAQCAtNTM2LDcgKzUzNiw4IEBAIENPTkZJR19CTEtfREVWPXkKICMg Q09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBub3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05F RD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JM S19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBU SU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JM S19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0x MTAyLDYgKzExMDMsOCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19L UkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdf Q1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9B RVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNU PW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQ VE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tV TklUX1RFU1Q9bQpAQCAtMTM1NSw2ICsxMzU4LDcgQEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJ R19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1tCiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdf RE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09ORklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdf RE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAtMzc5OSw2ICszODAzLDcgQEAgQ09ORklHX01M WFNXX1NQRUNUUlVNPW0KIENPTkZJR19NTUNfQkxPQ0s9bQogQ09ORklHX01NQ19CTE9DS19NSU5P UlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJR19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQK ICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfRFdfQkxVRUZJRUxE IGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19EV19FWFlOT1MgaXMgbm90IHNldApAQCAtNTczMCw2 ICs1NzM1LDcgQEAgQ09ORklHX1NDU0lfU1BJX0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRS Uz1tCiAjIENPTkZJR19TQ1NJX1NURVggaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4 WFhfMiBpcyBub3Qgc2V0CisjIENPTkZJR19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBD T05GSUdfU0NTSV9VRlNIQ0QgaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMg bm90IHNldAogQ09ORklHX1NDU0lfVklSVElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtcmlzY3Y2 NC1kZWJ1Zy1mZWRvcmEuY29uZmlnIGIva2VybmVsLXJpc2N2NjQtZGVidWctZmVkb3JhLmNvbmZp ZwppbmRleCBlZTU4NjY0Li5mMWY3MmZjIDEwMDY0NAotLS0gYS9rZXJuZWwtcmlzY3Y2NC1kZWJ1 Zy1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1yaXNjdjY0LWRlYnVnLWZlZG9yYS5jb25maWcK QEAgLTYxNiw3ICs2MTYsNyBAQCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05F RF9MT09QPW0KIENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpF Q1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNL IGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09O RklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJ R19CTEtfV0JUX01RPXkKQEAgLTEyMTEsNiArMTIxMSw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVO Qz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RT IGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0K K0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJ Ql9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMg bm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19D UllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXJpc2N2 NjQtZGVidWctcmhlbC5jb25maWcgYi9rZXJuZWwtcmlzY3Y2NC1kZWJ1Zy1yaGVsLmNvbmZpZwpp bmRleCBjMTlkM2MwLi40ZmI0YjE2IDEwMDY0NAotLS0gYS9rZXJuZWwtcmlzY3Y2NC1kZWJ1Zy1y aGVsLmNvbmZpZworKysgYi9rZXJuZWwtcmlzY3Y2NC1kZWJ1Zy1yaGVsLmNvbmZpZwpAQCAtNTU1 LDcgKzU1NSw4IEBAIENPTkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9P UCBpcyBub3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1Jf SU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBu b3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19C TEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxL X1dCVF9NUT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0xMTI4LDYgKzExMjksOCBAQCBDT05GSUdf Q1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19L UkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1Nf S1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09O RklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJf QkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVT VD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTM4NSw2ICsx Mzg4LDcgQEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZM QUtFWT1tCiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNl dAogQ09ORklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9 eQpAQCAtMzgzMiw2ICszODM2LDcgQEAgQ09ORklHX01MWFNXX1NQRUNUUlVNPW0KIENPTkZJR19N TUNfQkxPQ0s9bQogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1t CisjIENPTkZJR19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBu b3Qgc2V0CiAjIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBzZXQKICMgQ09ORklHX01N Q19EV19FWFlOT1MgaXMgbm90IHNldApAQCAtNTgyMCw2ICs1ODI1LDcgQEAgQ09ORklHX1NDU0lf U1BJX0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19TQ1NJX1NURVgg aXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0CisjIENPTkZJ R19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0QgaXMgbm90 IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1NDU0lfVklS VElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtcmlzY3Y2NC1mZWRvcmEuY29uZmlnIGIva2VybmVs LXJpc2N2NjQtZmVkb3JhLmNvbmZpZwppbmRleCA5ZGZjYzNjLi5mN2E1MmExIDEwMDY0NAotLS0g YS9rZXJuZWwtcmlzY3Y2NC1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1yaXNjdjY0LWZlZG9y YS5jb25maWcKQEAgLTYxNSw3ICs2MTUsNyBAQCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdfQkxL X0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19F UlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9O X0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJB Q0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFM PXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAgLTEyMTAsNiArMTIxMCw4IEBAIENPTkZJR19DUllQ VE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVf U0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5J VF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdf Q1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5D SE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0K IENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEva2Vy bmVsLXJpc2N2NjQtcmhlbC5jb25maWcgYi9rZXJuZWwtcmlzY3Y2NC1yaGVsLmNvbmZpZwppbmRl eCAzMDYyOWY5Li5iMDZiZjg5IDEwMDY0NAotLS0gYS9rZXJuZWwtcmlzY3Y2NC1yaGVsLmNvbmZp ZworKysgYi9rZXJuZWwtcmlzY3Y2NC1yaGVsLmNvbmZpZwpAQCAtNTU1LDcgKzU1NSw4IEBAIENP TkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBpcyBub3Qgc2V0CiBD T05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5v dCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qgc2V0CitDT05GSUdf QkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZ UFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CiBDT05G SUdfQkxLX1dCVD15CkBAIC0xMTI4LDYgKzExMjksOCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9 bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBp cyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitD T05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJf QUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5v dCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZ UFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTM3Nyw2ICsxMzgwLDcgQEAgQ09ORklH X0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1tCiBDT05GSUdf RE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09ORklHX0RNX0lO VEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAtMzgxMCw2ICsz ODE0LDcgQEAgQ09ORklHX01MWFNXX1NQRUNUUlVNPW0KIENPTkZJR19NTUNfQkxPQ0s9bQogQ09O RklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisjIENPTkZJR19NTUNf Q1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qgc2V0CiAjIENPTkZJ R19NTUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19EV19FWFlOT1MgaXMg bm90IHNldApAQCAtNTc5NSw2ICs1ODAwLDcgQEAgQ09ORklHX1NDU0lfU1BJX0FUVFJTPW0KIENP TkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19TQ1NJX1NURVggaXMgbm90IHNldAogIyBD T05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0CisjIENPTkZJR19TQ1NJX1VGU19DUllQ VE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0QgaXMgbm90IHNldAogIyBDT05GSUdf U0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1NDU0lfVklSVElPPW0KCmRpZmYgLS1n aXQgYS9rZXJuZWwtcmlzY3Y2NC1ydC1kZWJ1Zy1mZWRvcmEuY29uZmlnIGIva2VybmVsLXJpc2N2 NjQtcnQtZGVidWctZmVkb3JhLmNvbmZpZwppbmRleCA4ZDE4NDFiLi44MTViODc1IDEwMDY0NAot LS0gYS9rZXJuZWwtcmlzY3Y2NC1ydC1kZWJ1Zy1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1y aXNjdjY0LXJ0LWRlYnVnLWZlZG9yYS5jb25maWcKQEAgLTYxNiw3ICs2MTYsNyBAQCBDT05GSUdf QkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19CTEtfREVWX1pP TkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdf QkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5M SU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15 CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAgLTEyMTIsNiAr MTIxMiw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQog IyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9f TElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01f S1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBD T05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJf QkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVT VD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXJpc2N2NjQtcnQtZmVkb3JhLmNvbmZpZyBiL2tlcm5l bC1yaXNjdjY0LXJ0LWZlZG9yYS5jb25maWcKaW5kZXggNzgwMjBiYy4uNmY5ZTQ1MSAxMDA2NDQK LS0tIGEva2VybmVsLXJpc2N2NjQtcnQtZmVkb3JhLmNvbmZpZworKysgYi9rZXJuZWwtcmlzY3Y2 NC1ydC1mZWRvcmEuY29uZmlnCkBAIC02MTUsNyArNjE1LDcgQEAgQ09ORklHX0JMS19ERVY9eQog Q09ORklHX0JMS19ERVZfWk9ORURfTE9PUD1tCiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENP TkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVf RU5DUllQVElPTl9GQUxMQkFDSyBpcyBub3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBU SU9OX0ZBTExCQUNLPXkKIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JM S19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CkBAIC0xMjExLDYgKzEyMTEsOCBAQCBD T05GSUdfQ1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NS WVBUT19LUkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JD X01BQ1NfS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9 bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBU T19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VO SVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQoKZGlmZiAt LWdpdCBhL2tlcm5lbC1zMzkweC1kZWJ1Zy1mZWRvcmEuY29uZmlnIGIva2VybmVsLXMzOTB4LWRl YnVnLWZlZG9yYS5jb25maWcKaW5kZXggYmM3YTA0OC4uY2JiNzllZSAxMDA2NDQKLS0tIGEva2Vy bmVsLXMzOTB4LWRlYnVnLWZlZG9yYS5jb25maWcKKysrIGIva2VybmVsLXMzOTB4LWRlYnVnLWZl ZG9yYS5jb25maWcKQEAgLTU5Myw3ICs1OTMsNyBAQCBDT05GSUdfQkxLX0RFVj15CiBDT05GSUdf QkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JM S19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBU SU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFM TEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9P UEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAgLTExNjksNiArMTE2OSw4IEBAIENPTkZJR19D UllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tS QjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19L VU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05G SUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9C RU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNU PW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCgpkaWZmIC0tZ2l0IGEv a2VybmVsLXMzOTB4LWRlYnVnLXJoZWwuY29uZmlnIGIva2VybmVsLXMzOTB4LWRlYnVnLXJoZWwu Y29uZmlnCmluZGV4IDQ3ZmVlYTAuLjVlNTg4ZDYgMTAwNjQ0Ci0tLSBhL2tlcm5lbC1zMzkweC1k ZWJ1Zy1yaGVsLmNvbmZpZworKysgYi9rZXJuZWwtczM5MHgtZGVidWctcmhlbC5jb25maWcKQEAg LTUzNyw3ICs1MzcsOCBAQCBDT05GSUdfQkxLX0RFVj15CiAjIENPTkZJR19CTEtfREVWX1pPTkVE X0xPT1AgaXMgbm90IHNldAogQ09ORklHX0JMS19ERVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VS Uk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04g aXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CitDT05G SUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklH X0JMS19XQlRfTVE9eQogQ09ORklHX0JMS19XQlQ9eQpAQCAtMTA5OSw2ICsxMTAwLDggQEAgQ09O RklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1tCiAjIENPTkZJR19DUllQ VE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQUVTX0NCQ19N QUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0NDTV9LVU5JVF9URVNUPW0K K0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAjIENPTkZJR19DUllQVE9f TElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJCX0tVTklU X1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9URVNUPW0KQEAgLTEzNjks NiArMTM3Miw3IEBAIENPTkZJR19ETV9ERUxBWT1tCiBDT05GSUdfRE1fRVJBPW0KIENPTkZJR19E TV9GTEFLRVk9bQogQ09ORklHX0RNSUlEPXkKKyMgQ09ORklHX0RNX0lOTElORUNSWVBUIGlzIG5v dCBzZXQKIENPTkZJR19ETV9JTlRFR1JJVFk9bQogQ09ORklHX0RNSV9TWVNGUz15CiBDT05GSUdf RE1JPXkKQEAgLTM4MDYsNiArMzgxMCw3IEBAIENPTkZJR19NTFhTV19TUEVDVFJVTT1tCiAjIENP TkZJR19NTUNfQkxPQ0sgaXMgbm90IHNldAogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09O RklHX01NQ19DQjcxMD1tCisjIENPTkZJR19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklH X01NQ19ERUJVRyBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBz ZXQKICMgQ09ORklHX01NQ19EV19FWFlOT1MgaXMgbm90IHNldApAQCAtNTc0Miw2ICs1NzQ3LDcg QEAgQ09ORklHX1NDU0lfU1BJX0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENP TkZJR19TQ1NJX1NURVggaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBu b3Qgc2V0CisjIENPTkZJR19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NT SV9VRlNIQ0QgaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAog Q09ORklHX1NDU0lfVklSVElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwtczM5MHgtZmVkb3JhLmNv bmZpZyBiL2tlcm5lbC1zMzkweC1mZWRvcmEuY29uZmlnCmluZGV4IDgxNDc1ZTYuLjY4OGYyMjQg MTAwNjQ0Ci0tLSBhL2tlcm5lbC1zMzkweC1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC1zMzkw eC1mZWRvcmEuY29uZmlnCkBAIC01OTIsNyArNTkyLDcgQEAgQ09ORklHX0JMS19ERVY9eQogQ09O RklHX0JMS19ERVZfWk9ORURfTE9PUD1tCiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJ R19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5D UllQVElPTl9GQUxMQkFDSyBpcyBub3Qgc2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9O X0ZBTExCQUNLPXkKIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19T RURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9NUT15CkBAIC0xMTY4LDYgKzExNjgsOCBAQCBDT05G SUdfQ1JZUFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBU T19LUkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01B Q1NfS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQor Q09ORklHX0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19M SUJfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRf VEVTVD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQoKZGlmZiAtLWdp dCBhL2tlcm5lbC1zMzkweC1yaGVsLmNvbmZpZyBiL2tlcm5lbC1zMzkweC1yaGVsLmNvbmZpZwpp bmRleCA0ZjhlZTNhLi45ODU5ZjFjIDEwMDY0NAotLS0gYS9rZXJuZWwtczM5MHgtcmhlbC5jb25m aWcKKysrIGIva2VybmVsLXMzOTB4LXJoZWwuY29uZmlnCkBAIC01MzcsNyArNTM3LDggQEAgQ09O RklHX0JMS19ERVY9eQogIyBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QIGlzIG5vdCBzZXQKIENP TkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90 IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OIGlzIG5vdCBzZXQKK0NPTkZJR19C TEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQ VElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKIENPTkZJ R19CTEtfV0JUPXkKQEAgLTEwOTksNiArMTEwMCw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1t CiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlz IG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NP TkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9B RVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90 IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQ VE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCkBAIC0xMzYxLDYgKzEzNjQsNyBAQCBDT05GSUdf RE1fREVMQVk9bQogQ09ORklHX0RNX0VSQT1tCiBDT05GSUdfRE1fRkxBS0VZPW0KIENPTkZJR19E TUlJRD15CisjIENPTkZJR19ETV9JTkxJTkVDUllQVCBpcyBub3Qgc2V0CiBDT05GSUdfRE1fSU5U RUdSSVRZPW0KIENPTkZJR19ETUlfU1lTRlM9eQogQ09ORklHX0RNST15CkBAIC0zNzg0LDYgKzM3 ODgsNyBAQCBDT05GSUdfTUxYU1dfU1BFQ1RSVU09bQogIyBDT05GSUdfTU1DX0JMT0NLIGlzIG5v dCBzZXQKIENPTkZJR19NTUNfQkxPQ0tfTUlOT1JTPTgKIENPTkZJR19NTUNfQ0I3MTA9bQorIyBD T05GSUdfTU1DX0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfREVCVUcgaXMgbm90IHNl dAogIyBDT05GSUdfTU1DX0RXX0JMVUVGSUVMRCBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfRFdf RVhZTk9TIGlzIG5vdCBzZXQKQEAgLTU3MTcsNiArNTcyMiw3IEBAIENPTkZJR19TQ1NJX1NQSV9B VFRSUz1tCiBDT05GSUdfU0NTSV9TUlBfQVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlzIG5v dCBzZXQKICMgQ09ORklHX1NDU0lfU1lNNTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdfU0NT SV9VRlNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQK ICMgQ09ORklHX1NDU0lfVUZTX0hXTU9OIGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJTz1t CgpkaWZmIC0tZ2l0IGEva2VybmVsLXMzOTB4LXpmY3BkdW1wLXJoZWwuY29uZmlnIGIva2VybmVs LXMzOTB4LXpmY3BkdW1wLXJoZWwuY29uZmlnCmluZGV4IDA5ZTgwMTguLmI5YWE3NmEgMTAwNjQ0 Ci0tLSBhL2tlcm5lbC1zMzkweC16ZmNwZHVtcC1yaGVsLmNvbmZpZworKysgYi9rZXJuZWwtczM5 MHgtemZjcGR1bXAtcmhlbC5jb25maWcKQEAgLTUzNyw3ICs1MzcsOCBAQCBDT05GSUdfQkxLX0RF Vj15CiAjIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1AgaXMgbm90IHNldAogQ09ORklHX0JMS19E RVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENP TkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04gaXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVf RU5DUllQVElPTl9GQUxMQkFDSz15CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENP TkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQogQ09ORklHX0JMS19XQlQ9 eQpAQCAtMTA5OSw2ICsxMTAwLDggQEAgQ09ORklHX0NSWVBUT19KSVRURVJFTlRST1BZPXkKICMg Q09ORklHX0NSWVBUT19LUkI1IGlzIG5vdCBzZXQKICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZU RVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVT VD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBU T19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJL IGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05G SUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTM2MSw2ICsxMzY0LDcgQEAg Q09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtFWT1tCiBD T05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAogQ09ORklH X0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpAQCAtMzc5 Miw2ICszNzk2LDcgQEAgQ09ORklHX01MWFNXX1NQRUNUUlVNPW0KICMgQ09ORklHX01NQ19CTE9D SyBpcyBub3Qgc2V0CiBDT05GSUdfTU1DX0JMT0NLX01JTk9SUz04CiBDT05GSUdfTU1DX0NCNzEw PW0KKyMgQ09ORklHX01NQ19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfTU1DX0RFQlVHIGlz IG5vdCBzZXQKICMgQ09ORklHX01NQ19EV19CTFVFRklFTEQgaXMgbm90IHNldAogIyBDT05GSUdf TU1DX0RXX0VYWU5PUyBpcyBub3Qgc2V0CkBAIC01NzMyLDYgKzU3MzcsNyBAQCBDT05GSUdfU0NT SV9TQ0FOX0FTWU5DPXkKIENPTkZJR19TQ1NJX1NSUF9BVFRSUz15CiAjIENPTkZJR19TQ1NJX1NU RVggaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0CisjIENP TkZJR19TQ1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0QgaXMg bm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1NDU0lf VklSVElPPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwteDg2XzY0LWRlYnVnLWZlZG9yYS5jb25maWcg Yi9rZXJuZWwteDg2XzY0LWRlYnVnLWZlZG9yYS5jb25maWcKaW5kZXggMGQ1MmJhMi4uMzY5OWZm ZiAxMDA2NDQKLS0tIGEva2VybmVsLXg4Nl82NC1kZWJ1Zy1mZWRvcmEuY29uZmlnCisrKyBiL2tl cm5lbC14ODZfNjQtZGVidWctZmVkb3JhLmNvbmZpZwpAQCAtNjYxLDcgKzY2MSw3IEBAIENPTkZJ R19CTEtfREVWPXkKIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19ERVZf Wk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJ R19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JMS19J TkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9O PXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTI3Niw2 ICsxMjc2LDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1t CiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBU T19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0ND TV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAj IENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJ Ql9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9U RVNUPW0KCmRpZmYgLS1naXQgYS9rZXJuZWwteDg2XzY0LWRlYnVnLXJoZWwuY29uZmlnIGIva2Vy bmVsLXg4Nl82NC1kZWJ1Zy1yaGVsLmNvbmZpZwppbmRleCA5M2M4OTEyLi41YjkyMmNlIDEwMDY0 NAotLS0gYS9rZXJuZWwteDg2XzY0LWRlYnVnLXJoZWwuY29uZmlnCisrKyBiL2tlcm5lbC14ODZf NjQtZGVidWctcmhlbC5jb25maWcKQEAgLTU2OCw3ICs1NjgsOCBAQCBDT05GSUdfQkxLX0RFVj15 CiAjIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1AgaXMgbm90IHNldAogQ09ORklHX0JMS19ERVZf Wk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJ R19CTEtfSU5MSU5FX0VOQ1JZUFRJT04gaXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5D UllQVElPTl9GQUxMQkFDSz15CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJ R19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQogQ09ORklHX0JMS19XQlQ9eQpA QCAtMTE1Miw2ICsxMTUzLDggQEAgQ09ORklHX0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQ VE9fS1JCNT1tCiAjIENPTkZJR19DUllQVE9fS1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09O RklHX0NSWVBUT19MSUJfQUVTX0NCQ19NQUNTX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19M SUJfQUVTX0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRf VEVTVD1tCiAjIENPTkZJR19DUllQVE9fTElCX0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdf Q1JZUFRPX0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0Uy U19LVU5JVF9URVNUPW0KQEAgLTE0MzMsNiArMTQzNiw3IEBAIENPTkZJR19ETV9ERUxBWT1tCiBD T05GSUdfRE1fRVJBPW0KIENPTkZJR19ETV9GTEFLRVk9bQogQ09ORklHX0RNSUlEPXkKKyMgQ09O RklHX0RNX0lOTElORUNSWVBUIGlzIG5vdCBzZXQKIENPTkZJR19ETV9JTlRFR1JJVFk9bQogQ09O RklHX0RNSV9TWVNGUz15CiBDT05GSUdfRE1JPXkKQEAgLTQwNjIsNiArNDA2Niw3IEBAIENPTkZJ R19NTFhTV19TUEVDVFJVTT1tCiBDT05GSUdfTU1DX0JMT0NLPW0KIENPTkZJR19NTUNfQkxPQ0tf TUlOT1JTPTgKIENPTkZJR19NTUNfQ0I3MTA9bQorIyBDT05GSUdfTU1DX0NSWVBUTyBpcyBub3Qg c2V0CiAjIENPTkZJR19NTUNfREVCVUcgaXMgbm90IHNldAogIyBDT05GSUdfTU1DX0RXX0JMVUVG SUVMRCBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfRFdfRVhZTk9TIGlzIG5vdCBzZXQKQEAgLTYw NDUsNiArNjA1MCw3IEBAIENPTkZJR19TQ1NJX1NQSV9BVFRSUz1tCiBDT05GSUdfU0NTSV9TUlBf QVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfU1lN NTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdfU0NTSV9VRlNfQ1JZUFRPIGlzIG5vdCBzZXQK ICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTX0hXTU9O IGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJTz1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXg4 Nl82NC1mZWRvcmEuY29uZmlnIGIva2VybmVsLXg4Nl82NC1mZWRvcmEuY29uZmlnCmluZGV4IDcy NWJlNzYuLjBmOGYzMTcgMTAwNjQ0Ci0tLSBhL2tlcm5lbC14ODZfNjQtZmVkb3JhLmNvbmZpZwor KysgYi9rZXJuZWwteDg2XzY0LWZlZG9yYS5jb25maWcKQEAgLTY2MCw3ICs2NjAsNyBAQCBDT05G SUdfQkxLX0RFVj15CiBDT05GSUdfQkxLX0RFVl9aT05FRF9MT09QPW0KIENPTkZJR19CTEtfREVW X1pPTkVEPXkKICMgQ09ORklHX0JMS19FUlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05G SUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGlzIG5vdCBzZXQKK0NPTkZJR19CTEtf SU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQogQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElP Tj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJR19CTEtfV0JUX01RPXkKQEAgLTEyNzUs NiArMTI3NSw4IEBAIENPTkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9 bQogIyBDT05GSUdfQ1JZUFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQ VE9fTElCX0FFU19DQkNfTUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19D Q01fS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQog IyBDT05GSUdfQ1JZUFRPX0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19M SUJfQkxBS0UyQl9LVU5JVF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRf VEVTVD1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLXg4Nl82NC1yaGVsLmNvbmZpZyBiL2tlcm5lbC14 ODZfNjQtcmhlbC5jb25maWcKaW5kZXggMzNlZjI2Zi4uYTgyNjc0ZSAxMDA2NDQKLS0tIGEva2Vy bmVsLXg4Nl82NC1yaGVsLmNvbmZpZworKysgYi9rZXJuZWwteDg2XzY0LXJoZWwuY29uZmlnCkBA IC01NjgsNyArNTY4LDggQEAgQ09ORklHX0JMS19ERVY9eQogIyBDT05GSUdfQkxLX0RFVl9aT05F RF9MT09QIGlzIG5vdCBzZXQKIENPTkZJR19CTEtfREVWX1pPTkVEPXkKICMgQ09ORklHX0JMS19F UlJPUl9JTkpFQ1RJT04gaXMgbm90IHNldAotIyBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9O IGlzIG5vdCBzZXQKK0NPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT05fRkFMTEJBQ0s9eQorQ09O RklHX0JMS19JTkxJTkVfRU5DUllQVElPTj15CiBDT05GSUdfQkxLX1NFRF9PUEFMPXkKIENPTkZJ R19CTEtfV0JUX01RPXkKIENPTkZJR19CTEtfV0JUPXkKQEAgLTExNTIsNiArMTE1Myw4IEBAIENP TkZJR19DUllQVE9fS1JCNUVOQz1tCiBDT05GSUdfQ1JZUFRPX0tSQjU9bQogIyBDT05GSUdfQ1JZ UFRPX0tSQjVfU0VMRlRFU1RTIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0FFU19DQkNf TUFDU19LVU5JVF9URVNUPW0KK0NPTkZJR19DUllQVE9fTElCX0FFU19DQ01fS1VOSVRfVEVTVD1t CitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfR0NNX0tVTklUX1RFU1Q9bQogIyBDT05GSUdfQ1JZUFRP X0xJQl9CRU5DSE1BUksgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyQl9LVU5J VF9URVNUPW0KIENPTkZJR19DUllQVE9fTElCX0JMQUtFMlNfS1VOSVRfVEVTVD1tCkBAIC0xNDI1 LDYgKzE0MjgsNyBAQCBDT05GSUdfRE1fREVMQVk9bQogQ09ORklHX0RNX0VSQT1tCiBDT05GSUdf RE1fRkxBS0VZPW0KIENPTkZJR19ETUlJRD15CisjIENPTkZJR19ETV9JTkxJTkVDUllQVCBpcyBu b3Qgc2V0CiBDT05GSUdfRE1fSU5URUdSSVRZPW0KIENPTkZJR19ETUlfU1lTRlM9eQogQ09ORklH X0RNST15CkBAIC00MDQwLDYgKzQwNDQsNyBAQCBDT05GSUdfTUxYU1dfU1BFQ1RSVU09bQogQ09O RklHX01NQ19CTE9DSz1tCiBDT05GSUdfTU1DX0JMT0NLX01JTk9SUz04CiBDT05GSUdfTU1DX0NC NzEwPW0KKyMgQ09ORklHX01NQ19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfTU1DX0RFQlVH IGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19EV19CTFVFRklFTEQgaXMgbm90IHNldAogIyBDT05G SUdfTU1DX0RXX0VYWU5PUyBpcyBub3Qgc2V0CkBAIC02MDE5LDYgKzYwMjQsNyBAQCBDT05GSUdf U0NTSV9TUElfQVRUUlM9bQogQ09ORklHX1NDU0lfU1JQX0FUVFJTPW0KICMgQ09ORklHX1NDU0lf U1RFWCBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1NZTTUzQzhYWF8yIGlzIG5vdCBzZXQKKyMg Q09ORklHX1NDU0lfVUZTX0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1VGU0hDRCBp cyBub3Qgc2V0CiAjIENPTkZJR19TQ1NJX1VGU19IV01PTiBpcyBub3Qgc2V0CiBDT05GSUdfU0NT SV9WSVJUSU89bQoKZGlmZiAtLWdpdCBhL2tlcm5lbC14ODZfNjQtcnQtZGVidWctZmVkb3JhLmNv bmZpZyBiL2tlcm5lbC14ODZfNjQtcnQtZGVidWctZmVkb3JhLmNvbmZpZwppbmRleCBkNDMyNjhi Li4wZWViMmJhIDEwMDY0NAotLS0gYS9rZXJuZWwteDg2XzY0LXJ0LWRlYnVnLWZlZG9yYS5jb25m aWcKKysrIGIva2VybmVsLXg4Nl82NC1ydC1kZWJ1Zy1mZWRvcmEuY29uZmlnCkBAIC02NjEsNyAr NjYxLDcgQEAgQ09ORklHX0JMS19ERVY9eQogQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUD1tCiBD T05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5KRUNUSU9OIGlzIG5v dCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSyBpcyBub3Qgc2V0 CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKIENPTkZJR19CTEtfSU5M SU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dCVF9N UT15CkBAIC0xMjc3LDYgKzEyNzcsOCBAQCBDT05GSUdfQ1JZUFRPX0tSQjVFTkM9bQogQ09ORklH X0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1X1NFTEZURVNUUyBpcyBub3Qgc2V0 CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VOSVRfVEVTVD1tCitDT05GSUdfQ1JZ UFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0dDTV9L VU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVOQ0hNQVJLIGlzIG5vdCBzZXQKIENP TkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1tCiBDT05GSUdfQ1JZUFRPX0xJQl9C TEFLRTJTX0tVTklUX1RFU1Q9bQoKZGlmZiAtLWdpdCBhL2tlcm5lbC14ODZfNjQtcnQtZGVidWct cmhlbC5jb25maWcgYi9rZXJuZWwteDg2XzY0LXJ0LWRlYnVnLXJoZWwuY29uZmlnCmluZGV4IGYw MTdkMWIuLmQ5NDQ3NTAgMTAwNjQ0Ci0tLSBhL2tlcm5lbC14ODZfNjQtcnQtZGVidWctcmhlbC5j b25maWcKKysrIGIva2VybmVsLXg4Nl82NC1ydC1kZWJ1Zy1yaGVsLmNvbmZpZwpAQCAtNTY4LDcg KzU2OCw4IEBAIENPTkZJR19CTEtfREVWPXkKICMgQ09ORklHX0JMS19ERVZfWk9ORURfTE9PUCBp cyBub3Qgc2V0CiBDT05GSUdfQkxLX0RFVl9aT05FRD15CiAjIENPTkZJR19CTEtfRVJST1JfSU5K RUNUSU9OIGlzIG5vdCBzZXQKLSMgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTiBpcyBub3Qg c2V0CitDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLPXkKK0NPTkZJR19CTEtf SU5MSU5FX0VOQ1JZUFRJT049eQogQ09ORklHX0JMS19TRURfT1BBTD15CiBDT05GSUdfQkxLX1dC VF9NUT15CiBDT05GSUdfQkxLX1dCVD15CkBAIC0xMTUzLDYgKzExNTQsOCBAQCBDT05GSUdfQ1JZ UFRPX0tSQjVFTkM9bQogQ09ORklHX0NSWVBUT19LUkI1PW0KICMgQ09ORklHX0NSWVBUT19LUkI1 X1NFTEZURVNUUyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0JDX01BQ1NfS1VO SVRfVEVTVD1tCitDT05GSUdfQ1JZUFRPX0xJQl9BRVNfQ0NNX0tVTklUX1RFU1Q9bQorQ09ORklH X0NSWVBUT19MSUJfQUVTX0dDTV9LVU5JVF9URVNUPW0KICMgQ09ORklHX0NSWVBUT19MSUJfQkVO Q0hNQVJLIGlzIG5vdCBzZXQKIENPTkZJR19DUllQVE9fTElCX0JMQUtFMkJfS1VOSVRfVEVTVD1t CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJTX0tVTklUX1RFU1Q9bQpAQCAtMTQzNSw2ICsxNDM4 LDcgQEAgQ09ORklHX0RNX0RFTEFZPW0KIENPTkZJR19ETV9FUkE9bQogQ09ORklHX0RNX0ZMQUtF WT1tCiBDT05GSUdfRE1JSUQ9eQorIyBDT05GSUdfRE1fSU5MSU5FQ1JZUFQgaXMgbm90IHNldAog Q09ORklHX0RNX0lOVEVHUklUWT1tCiBDT05GSUdfRE1JX1NZU0ZTPXkKIENPTkZJR19ETUk9eQpA QCAtNDEwMyw2ICs0MTA3LDcgQEAgQ09ORklHX01MWFNXX1NQRUNUUlVNPW0KIENPTkZJR19NTUNf QkxPQ0s9bQogQ09ORklHX01NQ19CTE9DS19NSU5PUlM9OAogQ09ORklHX01NQ19DQjcxMD1tCisj IENPTkZJR19NTUNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19ERUJVRyBpcyBub3Qg c2V0CiAjIENPTkZJR19NTUNfRFdfQkxVRUZJRUxEIGlzIG5vdCBzZXQKICMgQ09ORklHX01NQ19E V19FWFlOT1MgaXMgbm90IHNldApAQCAtNjA4OSw2ICs2MDk0LDcgQEAgQ09ORklHX1NDU0lfU1BJ X0FUVFJTPW0KIENPTkZJR19TQ1NJX1NSUF9BVFRSUz1tCiAjIENPTkZJR19TQ1NJX1NURVggaXMg bm90IHNldAogIyBDT05GSUdfU0NTSV9TWU01M0M4WFhfMiBpcyBub3Qgc2V0CisjIENPTkZJR19T Q1NJX1VGU19DUllQVE8gaXMgbm90IHNldAogIyBDT05GSUdfU0NTSV9VRlNIQ0QgaXMgbm90IHNl dAogIyBDT05GSUdfU0NTSV9VRlNfSFdNT04gaXMgbm90IHNldAogQ09ORklHX1NDU0lfVklSVElP PW0KCmRpZmYgLS1naXQgYS9rZXJuZWwteDg2XzY0LXJ0LWZlZG9yYS5jb25maWcgYi9rZXJuZWwt eDg2XzY0LXJ0LWZlZG9yYS5jb25maWcKaW5kZXggMGZhNzQ2OS4uY2FmODZlNCAxMDA2NDQKLS0t IGEva2VybmVsLXg4Nl82NC1ydC1mZWRvcmEuY29uZmlnCisrKyBiL2tlcm5lbC14ODZfNjQtcnQt ZmVkb3JhLmNvbmZpZwpAQCAtNjYwLDcgKzY2MCw3IEBAIENPTkZJR19CTEtfREVWPXkKIENPTkZJ R19CTEtfREVWX1pPTkVEX0xPT1A9bQogQ09ORklHX0JMS19ERVZfWk9ORUQ9eQogIyBDT05GSUdf QkxLX0VSUk9SX0lOSkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZ UFRJT05fRkFMTEJBQ0sgaXMgbm90IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9G QUxMQkFDSz15CiBDT05GSUdfQkxLX0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJR19CTEtfU0VE X09QQUw9eQogQ09ORklHX0JMS19XQlRfTVE9eQpAQCAtMTI3Niw2ICsxMjc2LDggQEAgQ09ORklH X0NSWVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1tCiAjIENPTkZJR19DUllQVE9f S1JCNV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQUVTX0NCQ19NQUNT X0tVTklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0NDTV9LVU5JVF9URVNUPW0KK0NP TkZJR19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAjIENPTkZJR19DUllQVE9fTElC X0JFTkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJCX0tVTklUX1RF U1Q9bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9URVNUPW0KCmRpZmYgLS1naXQg YS9rZXJuZWwteDg2XzY0LXJ0LXJoZWwuY29uZmlnIGIva2VybmVsLXg4Nl82NC1ydC1yaGVsLmNv bmZpZwppbmRleCA4ZWY5NmNiLi41M2I2ZDQxIDEwMDY0NAotLS0gYS9rZXJuZWwteDg2XzY0LXJ0 LXJoZWwuY29uZmlnCisrKyBiL2tlcm5lbC14ODZfNjQtcnQtcmhlbC5jb25maWcKQEAgLTU2OCw3 ICs1NjgsOCBAQCBDT05GSUdfQkxLX0RFVj15CiAjIENPTkZJR19CTEtfREVWX1pPTkVEX0xPT1Ag aXMgbm90IHNldAogQ09ORklHX0JMS19ERVZfWk9ORUQ9eQogIyBDT05GSUdfQkxLX0VSUk9SX0lO SkVDVElPTiBpcyBub3Qgc2V0Ci0jIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04gaXMgbm90 IHNldAorQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSz15CitDT05GSUdfQkxL X0lOTElORV9FTkNSWVBUSU9OPXkKIENPTkZJR19CTEtfU0VEX09QQUw9eQogQ09ORklHX0JMS19X QlRfTVE9eQogQ09ORklHX0JMS19XQlQ9eQpAQCAtMTE1Myw2ICsxMTU0LDggQEAgQ09ORklHX0NS WVBUT19LUkI1RU5DPW0KIENPTkZJR19DUllQVE9fS1JCNT1tCiAjIENPTkZJR19DUllQVE9fS1JC NV9TRUxGVEVTVFMgaXMgbm90IHNldAogQ09ORklHX0NSWVBUT19MSUJfQUVTX0NCQ19NQUNTX0tV TklUX1RFU1Q9bQorQ09ORklHX0NSWVBUT19MSUJfQUVTX0NDTV9LVU5JVF9URVNUPW0KK0NPTkZJ R19DUllQVE9fTElCX0FFU19HQ01fS1VOSVRfVEVTVD1tCiAjIENPTkZJR19DUllQVE9fTElCX0JF TkNITUFSSyBpcyBub3Qgc2V0CiBDT05GSUdfQ1JZUFRPX0xJQl9CTEFLRTJCX0tVTklUX1RFU1Q9 bQogQ09ORklHX0NSWVBUT19MSUJfQkxBS0UyU19LVU5JVF9URVNUPW0KQEAgLTE0MjcsNiArMTQz MCw3IEBAIENPTkZJR19ETV9ERUxBWT1tCiBDT05GSUdfRE1fRVJBPW0KIENPTkZJR19ETV9GTEFL RVk9bQogQ09ORklHX0RNSUlEPXkKKyMgQ09ORklHX0RNX0lOTElORUNSWVBUIGlzIG5vdCBzZXQK IENPTkZJR19ETV9JTlRFR1JJVFk9bQogQ09ORklHX0RNSV9TWVNGUz15CiBDT05GSUdfRE1JPXkK QEAgLTQwODEsNiArNDA4NSw3IEBAIENPTkZJR19NTFhTV19TUEVDVFJVTT1tCiBDT05GSUdfTU1D X0JMT0NLPW0KIENPTkZJR19NTUNfQkxPQ0tfTUlOT1JTPTgKIENPTkZJR19NTUNfQ0I3MTA9bQor IyBDT05GSUdfTU1DX0NSWVBUTyBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNfREVCVUcgaXMgbm90 IHNldAogIyBDT05GSUdfTU1DX0RXX0JMVUVGSUVMRCBpcyBub3Qgc2V0CiAjIENPTkZJR19NTUNf RFdfRVhZTk9TIGlzIG5vdCBzZXQKQEAgLTYwNjMsNiArNjA2OCw3IEBAIENPTkZJR19TQ1NJX1NQ SV9BVFRSUz1tCiBDT05GSUdfU0NTSV9TUlBfQVRUUlM9bQogIyBDT05GSUdfU0NTSV9TVEVYIGlz IG5vdCBzZXQKICMgQ09ORklHX1NDU0lfU1lNNTNDOFhYXzIgaXMgbm90IHNldAorIyBDT05GSUdf U0NTSV9VRlNfQ1JZUFRPIGlzIG5vdCBzZXQKICMgQ09ORklHX1NDU0lfVUZTSENEIGlzIG5vdCBz ZXQKICMgQ09ORklHX1NDU0lfVUZTX0hXTU9OIGlzIG5vdCBzZXQKIENPTkZJR19TQ1NJX1ZJUlRJ Tz1tCgpkaWZmIC0tZ2l0IGEva2VybmVsLmNoYW5nZWxvZyBiL2tlcm5lbC5jaGFuZ2Vsb2cKaW5k ZXggN2FkYTVjYi4uMzM4ZjhlZCAxMDA2NDQKLS0tIGEva2VybmVsLmNoYW5nZWxvZworKysgYi9r ZXJuZWwuY2hhbmdlbG9nCkBAIC0xLDcgKzEsMzM4MyBAQAotKiBNb24gQXVnIDE3IDIwMjYgRmVk b3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTYx XQorKiBUdWUgQXVnIDE4IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRv cmFwcm9qZWN0Lm9yZz4gWzcuMy4wLTAucmMwLjBmMjNkNTZmMTdmZC4zXQogLSBhdXRvbW90aXZl OiBlbmFibGUgSFVHRVRMQkZTIHRvIHdvcmthcm91bmQgYnVpbGQgZXJyb3IgKFNjb3R0IFdlYXZl cikKIFJlc29sdmVzOiAKIAorKiBUdWUgQXVnIDE4IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxr ZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMy4wLTAucmMwLjBmMjNkNTZmMTdmZC4y XQorLSBUdXJuIG9uIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZUFRJT04gZm9yIFJIRUwgcGVuZGlu ZyB0b28gKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gQkxLX0lOTElORV9FTkNSWVBUSU9O X0ZBTExCQUNLIGZvciBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0gUmVzZXQgTWFrZWZp bGUucmhlbHZlciBmb3IgdGhlIDcuMyBjeWNsZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gTWVyZ2Ug Y29uZmlncyBpbnRvIGNvbW1vbiBmb3IgNy4yIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQv Y29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIFJUQ19EUlZfUEwwMzEgKEVyaWMgQ2hhbnVkZXQp CistIHJlZGhhdDogbmFtZSB0aGUgZHRiIGFuZCBVS0kgYXJjaCBsaXN0cyAoSmFuIFN0YW5jZWsp CistIHJlZGhhdDogdXNlIG9uZSBzcGVsbGluZyBmb3IgdGhlIG5vYnVpbGRhcmNoZXMgZmlsZXMg Z3VhcmQgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGRyb3Agc3RhbGUgcHBjNjQgZnJvbSB0aGUg a2FiaWR3LWJhc2UgYXJjaCBsaXN0IChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBkb2N1bWVudCB0 aGUga2FiaWNoayBmb3JjZS1vZmYgYXMgYSBzZWFzb25hbCB0b2dnbGUgKEphbiBTdGFuY2VrKQor LSByZWRoYXQ6IHVzZSBvbmUgc3BlbGxpbmcgZm9yIHRoZSBpbmNsdWRlIGFuZCBnZW1pbmkgY29u ZGl0aW9uYWxzIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiByZW1vdmUgdW51c2VkIGVsZl9pbWFn ZV9pbnN0YWxsX3BhdGggYW5kIGR1cGxpY2F0ZSBkZWZpbmVzIChKYW4gU3RhbmNlaykKKy0gcmVk aGF0OiBkcm9wIHRoZSBkZWFkIGtlcm5lbC10b29scyBfX3JlcXVpcmVzX2V4Y2x1ZGUgcHl0aG9u IGZpbHRlciAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZHJvcCB0aGUgRmVkb3JhIDQxIGNyb3Nz LWJ1aWxkIGdkYi1pbmRleCB3b3JrYXJvdW5kIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBkcm9w IHN0YWxlIGJ1aWxkIHN3aXRjaGVzIGZyb20gZGlzdC1wZXJmIGFuZCBkaXN0LXJwbS1iYXNlb25s eSAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZ2l2ZSBrZXJuZWwtYXV0b21vdGl2ZSBpdHMgb3du IHN1bW1hcnkgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGRyb3AgbGVmdG92ZXIga2VybmVsX2t2 bV9wb3N0IGNhbGxzIGZvciBydC02NGsgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IHJlc3RvcmUg bWlzc2luZyBzdW1tYXJ5IG9mIHRoZSBrZXJuZWwtZGVidWcgdmFyaWFudCAoSmFuIFN0YW5jZWsp CistIHJlZGhhdDogZml4IHBhcnNlIGVycm9yIGluIGJhc2Vvbmx5IHNhbml0eSBjaGVjayBtZXNz YWdlIChKYW4gU3RhbmNlaykKKy0gZHJhY3V0LXZpcnQuY29uZjogY2hhbmdlIHN5c3RlbWQtcGNy cGhhc2UgdG8gc3lzdGVtZC1wY3JleHRlbmQgKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9r ZXJuZWwuc3BlYy50ZW1wbGF0ZTogU3dpdGNoIFVLSSBhZGRvbnMgdG8gdXNpbmcgVUtJIGNlcnQg KFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBkaXNhYmxl IENPTkZJR19NRCAoSmFyZWQgS2FuZ2FzKQorLSBDbGVhbiB1cCB1bm5lY2Vzc2FyeSBwZW5kaW5n IGVudHJpZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gQ09ORklHX0NSWVBUT19NTERT QSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgbWlzbWF0Y2ggZm9yIHJo ZWwgYXV0b21vdGl2ZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVwIGEgY29uZmlnIG1pc21h dGNoIGluIHBlbmRpbmcgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBhdXRv bW90aXZlOiBkZWJ1ZzogZW5hYmxlIEtBU0FOX0lOTElORSAoSmFyZWQgS2FuZ2FzKQorLSBSZW1v dmUgc3RhbGUgY29uZmlnIGl0ZW1zIGZyb20gNy4xIChKdXN0aW4gTS4gRm9yYmVzKQorLSBMYXN0 IGNvbmZpZ3MgZm9yIDcuMiBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogRGlz YWJsZSB0aGUgQ1JZUFRPX0xJQl9BRVNDRkIgY29uZmlnIHN3aXRjaCAoVGhvbWFzIEh1dGgpCist IHJlZGhhdC9jb25maWdzOiBkbyBub3QgZW5hYmxlIElQUV9HQ0NfOTY1MCAoRXJpYyBDaGFudWRl dCkKKy0gcmVkaGF0L2NvbmZpZ3M6IGRvIG5vdCBlbmFibGUgQ0xLX1gxUDQyMTAwXyogKEVyaWMg Q2hhbnVkZXQpCistIHJlZGhhdDogYWx3YXlzIG92ZXJ3cml0ZSBzcGVjIHRlbXBsYXRlIGNvcHkg KEphbiBTdGFuY2VrKQorLSBnaXRsYWItY2k6IGVuYWJsZSBFTE4gY2xhbmcgYnVpbGRzIChTY290 dCBXZWF2ZXIpCistIFR1cm4gb24gQ09ORklHX1JFR01BUCBmb3IgUkhFTCBzMzkweCAoSnVzdGlu IE0uIEZvcmJlcykKKy0gVHVybiBBQ1BJX1BMQVRGT1JNX1BST0ZJTEUgdG8gYnVpbHQtaW4gZm9y IFJIRUwgeDg2IChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIENPTkZJR19SRVNDVFJMX0ZT IGZvciBSSEVMIHg4NiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBjb25maWdzOiByaGVs OiBFbmFibGUgQU1EIElTUDQgTUlQSSBjYW1lcmEgc29sdXRpb24gKEthdGUgSHN1YW4pCistIGZl ZG9yYTogdXBkYXRlcyBmb3IgdGhlIDcuMiBtZXJnZSB3aW5kb3cgKFBldGVyIFJvYmluc29uKQor LSByZWRoYXQvY29uZmlnczogRW5hYmxlIGRlYWRsaW5lIGFuZCBzdGFsbCBtb25pdG9ycyAoR2Fi cmllbGUgTW9uYWNvKQorLSByZWRoYXQva2VybmVsLnNwZWM6IGZpeCBidWlsZCBmb3IgcnRvbmx5 IChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBmaWx0ZXJtb2RzLnB5OiBkb2N1bWVudCBleGFjdF9w a2cgYW5kIGlnbm9yZV9kZXBzIHJ1bGUgYXR0cmlidXRlcyAoSmFuIFN0YW5jZWspCistIHJlZGhh dDogZmlsdGVybW9kcy5weTogbWFrZSBwaWNrX2Jlc3QoKSBkZXRlcm1pbmlzdGljIG9uIHRpZWQg cGFja2FnZXMgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGZpbHRlcm1vZHMucHk6IGFkZCBpZ25v cmVfZGVwcyBydWxlIG9wdGlvbiAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZmlsdGVybW9kcy5w eTogZG9uJ3QgY3JlYXRlIGxvZ2ZpbGUgYXV0b21hdGljYWxseSAoSmFuIFN0YW5jZWspCistIHJl ZGhhdDogZmlsdGVybW9kcy5weTogY2xlYW4gdXAgbG9nZ2luZyBpbXBvcnRzIChKYW4gU3RhbmNl aykKKy0gcmVkaGF0OiBmaWx0ZXJtb2RzLnB5OiBzdHJpcCBsaW5lcyB3aGVuIHBhcnNpbmcgZGVw bW9kIGZpbGUgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGZpbHRlcm1vZHMucHk6IGZpeCB0eXBv IGluIF9jaGVja19wcmVmZmVyZWRfcGtnIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBmaWx0ZXJt b2RzLnB5OiBlcnJvciBvbiB1bmtub3duIHBhY2thZ2UgZGVwZW5kZW5jeSAoSmFuIFN0YW5jZWsp CistIHJlZGhhdDogZmlsdGVybW9kcy5weTogYXZvaWQgbXV0YWJsZSBkZWZhdWx0IGFyZ3VtZW50 cyAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZmlsdGVybW9kcy5weTogaGFuZGxlIC56c3QgYW5k IC5neiBjb21wcmVzc2VkIG1vZHVsZXMgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGZpbHRlcm1v ZHMucHk6IGZpeCBFeGNlcHRpb24gc3RyaW5nIGZvcm1hdHRpbmcgKEphbiBTdGFuY2VrKQorLSBy ZWRoYXQ6IGZpbHRlcm1vZHMucHk6IGRldGVjdCBkZXBlbmRlbmN5IGN5Y2xlcyBpbiBnZXRfdG9w b19vcmRlcigpIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBmaWx0ZXJtb2RzLnB5OiBmaXggZG9f cnBtX21hcHBpbmdfdGVzdCgpIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBmaWx0ZXJtb2RzLnB5 OiBzaW1wbGlmeSBhbGdvcml0aG0gKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGZpbHRlcm1vZHMu cHk6IGFkZCBuZXcgdGVzdHMgKEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxl IFFDUzYxNSBwaW5jdHJsIGFuZCBpbnRlcmNvbm5lY3QgZHJpdmVycyAoV3UgRmFuZykKKy0gcmVk aGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGVuYWJsZSBTRU5TT1JTX0lOQTJYWCAoSmFyZWQgS2Fu Z2FzKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIFBXTV9GU0xfRlRNIGFz IGEgbW9kdWxlIChKYXJlZCBLYW5nYXMpCistIEFkZCBmZWRvcmEgZW50cnkgaW4gcGVuZGluZyBm b3Igd2VpcmQgbWlzbWF0Y2ggaW4gc2NyaXB0cyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVw IGNvbmZpZyBtaXNtYXRjaGVzIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNw ZWM6IGRlcml2ZSBwZXNpZ25fbmFtZV8wIGZyb20gc2VjdXJlYm9vdF9rZXlfMCAoSmFuIFN0YW5j ZWspCistIHJlZGhhdC9jb25maWdzOiBNb3ZlIElPTU1VX1BUXyogZnJvbSByaGVsLXBlbmRpbmcg dG8gcmhlbCAoSmVubmlmZXIgQmVycmluZ2VyKQorLSByZWRoYXQva2VybmVsLnNwZWM6IHJlcXVp cmUgbGliYmFiZWx0cmFjZTItZGV2ZWwgKFlhYWtvdiBTZWxrb3dpdHopCistIHJlZGhhdDogbW92 ZSB5bmx0b29sIGRlYnVnaW5mbyB0byBrZXJuZWwtdG9vbHMtZGVidWdpbmZvIChBdWd1c3RvIENh cmluZ2kpCistIFR1cm4gb24gQ09ORklHX1JFR01BUCBmb3IgUkhFTCBzMzkweCBwZW5kaW5nIGZv ciBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBhZGQga21hcC5weSB0b29s IGFuZCBrZXJuZWwta21hcC1pbnRlcm5hbCBwYWNrYWdlIChSYWRvIFZyYm92c2t5KQorLSB1a2kt dmlydDogQWRkIGZkaXNrIHRvIHRoZSBpbml0cmFtZnMgdG8gbWFrZSBzeXN0ZW1kLXJlcGFydCBm dW5jdGlvbmFsIChWaXRhbHkgS3V6bmV0c292KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIEVw c29uIFJYODExMSBSVEMgZHJpdmVyIGZvciBhcm0vYWFyY2g2NCBidWlsZHMuIFNpZ25lZC1vZmYt Ynk6IE5pcm1hbGEgRGFsdmkgPG5kYWx2aUByZWRoYXQuY29tPiAoTmlybWFsYSBEYWx2aSkKKy0g cmVkaGF0OiBzaWduIGNlbnRvcyBrZXJuZWwgYW5kIFVLSXMgd2l0aCA4MDAgY2VydHMgKEphbiBT dGFuY2VrKQorLSByZWRoYXQvbW9kLXNpZ24uc2g6IHVzZSBDT05GSUdfTU9EVUxFX1NJR19IQVNI IChKYW4gU3RhbmNlaykKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBQYWNrIGEgYml0 IG1vcmUgZGVzY3JpcHRpdmUgbmFtZSBmb3IgZXh0cmFzLyAoVml0YWx5IEt1em5ldHNvdikKKy0g cmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBJT01NVV9ERUJVR19QQUdFQUxMT0MgYW5kIEFNRF9JT01N VV9JT01NVUZEIChKZXJyeSBTbml0c2VsYWFyKQorLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJsZSBV U0I0U1RSRUFNIHByb3RvY29sIChEZW5uaXMgQ2hlbikgW1JIRUwtMTg2OTM0XQorLSBGaXggdXAg YSBtaXNtYXRjaCBmb3IgYXV0b21vdGl2ZSBDT05GSUdfQ0xLX1gxRTgwMTAwX0dDQyAoSnVzdGlu IE0uIEZvcmJlcykKKy0gZmVkb3JhOiBhYXJjaDY0OiBTZXQgQ09ORklHX0RSSVZFUl9ERUZFUlJF RF9QUk9CRV9USU1FT1VUPS0xIChBbGkgRXJkaW5jIEtvcm9nbHUpCistIHJlZGhhdDogY29uZmln czogRW5hYmxlIEFNRCBJU1A0IE1JUEkgY2FtZXJhIHNvbHV0aW9uIChLYXRlIEhzdWFuKQorLSBy ZWRoYXQ6IGNvbmZpZ3M6IEVuYWJsZSBJbnRlbCBDVlMgKEthdGUgSHN1YW4pCistIEluY3JlYXNl IHRoZSBzMzkweCBrZXJuZWwgYmFzZWxpbmUgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9r c3BkeDogcmVtb3ZlIHJlZHVuZGFudCBPUiB0ZXJtcyBmcm9tIGpvaW50IGxpY2Vuc2UgZXhwcmVz c2lvbiAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9rZXJuZWwuc3BlYzogc2V0IGFsc28gSE9TVF9F WFRSQUNGTEFHUyBmb3IgQlBGIGJvb3RzdHJhcCBidWlsZCAoSmFuIFN0YW5jZWspCistIFRyaW0g Y2hhbmdlbG9nIGR1cGxpY2F0ZXMgYWZ0ZXIgcmViYXNlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBy ZWRoYXQvY29uZmlnczogZG8gbm90IGRpc2FibGUgUENJRVBPUlRCVVMgb24gcHBjNjRsZSAoRGFu IEhvcsOhaykKKy0gUmVzZXQgUkhFTF9SRUxFQVNFIGZvciB0aGUgNy4yIGN5Y2xlIChTY290dCBX ZWF2ZXIpCistIGZlZG9yYTogY2xlYW51cCB0aGUgQ2FkZW5jZSBVU0Igb3B0aW9ucyAoUGV0ZXIg Um9iaW5zb24pCistIENvbnNvbGlkYXRlIGNvbmZpZ3MgdG8gY29tbW9uIGZvciA3LjEgKEp1c3Rp biBNLiBGb3JiZXMpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogTW92ZSBVS0kgYWRk b25zIHRvIGV4dHJhcy8gKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50 ZW1wbGF0ZTogZml4ZXMgZm9yIHVzaW5nIHdpdGhfcnRvbmx5IChDbGFyayBXaWxsaWFtcykKKy0g cmVkaGF0L2NvbmZpZ3M6IHJoZWw6IEVuYWJsZSBTcGFjZW1pVCBkcml2ZXJzIGZvciBSSVNDLVYg KEplbm5pZmVyIEJlcnJpbmdlcikKKy0gRGlzYWJsZSBUUE0gYXMgaHdybmcgc291cmNlIG9uIGFh cmNoNjQgKMWgdMSbcMOhbiBIb3LDocSNZWspCistIHJlZGhhdC9jb25maWdzOiBzZXQgTlhQIHN0 b3JhZ2UgZHJpdmVyIHRvIGJ1aWx0LWluIGZvciBib290IHNwZWVkIChFZCBDaG9uZykKKy0ga2Vy bmVsLnNwZWMudGVtcGxhdGU6IGFkZCB0Y3BfYW8ga3NlbGZ0ZXN0cyAoRGF2aWRlIENhcmF0dGkp IFtSSEVMLTE0MjYzN10KKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdfU01DX0hTX0NU UkxfQlBGIGZvciBzMzkweCBkZWJ1ZyBrZXJuZWwgKEphbiBQb2xlbnNreSkKKy0gcmVkaGF0L2Nv bmZpZ3M6IEVuYWJsZSBDT05GSUdfU01DX0hTX0NUUkxfQlBGIGZvciBzMzkweCBhcmNoaXRlY3R1 cmUgKEphbiBQb2xlbnNreSkKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdfRElCUyBi dWlsdC1pbiBmb3IgczM5MHggemZjcGR1bXAgKEphbiBQb2xlbnNreSkKKy0gcmVkaGF0L2NvbmZp Z3M6IERpc2FibGUgQ09ORklHX0RJQlNfTE8gZm9yIHMzOTB4IGFyY2hpdGVjdHVyZSAoSmFuIFBv bGVuc2t5KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19ESUJTIGZvciBzMzkweCBh cmNoaXRlY3R1cmUgKEphbiBQb2xlbnNreSkKKy0gcmVkaGF0L2tlcm5lbC5zcGVjOiBtYWtlIG1v ZHVsZSBhbmQgbW9kdWxlcy1jb3JlIHByb3ZpZGVzIHVzZSB2YXJpYW50IChKYW4gU3RhbmNlaykK Ky0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGVuYWJsZSBOWFBfU0FSX0FEQyBhcyBhIG1v ZHVsZSAoSmFyZWQgS2FuZ2FzKQorLSByZWRoYXQ6IENPTkZJR19NT0RQUk9CRV9QQVRIOiB1c2Ug dXBzdHJlYW0gZGVmYXVsdCAoU2NvdHQgV2VhdmVyKQorLSBMYXN0IGZldyBGZWRvcmEgY29uZmln cyBmb3IgNy4xIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRvcmE6IGFhcmNoNjQ6IERpc2FibGUg UUNvbSBRQ0UgZHJpdmVyIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBVcGRhdGVzIGZvciB0 aGUgNy4xIG1lcmdlIHdpbmRvdyAoUGV0ZXIgUm9iaW5zb24pCistIEVuYWJsZSB0aGUgZHJtL2Fj Y2VsL3FhaWMgZHJpdmVyIG1vZHVsZSBmb3IgeDg2IGluIHJoZWwgY29uZmlnLiAoSm9obiBXaWVs ZSkKKy0gVXBkYXRlIHJoZWwgZHJtL2FjY2VsIGNvbmZpZ3MgdG8gbWF0Y2ggY2VudG9zLXN0cmVh bS0xMC4gKEpvaG4gV2llbGUpCistIHJlZGhhdC9jb25maWdzOiBkbyBub3QgZW5hYmxlIEFSQ0hf VEVHUkFfMjM4X1NPQyAoRXJpYyBDaGFudWRldCkKKy0gcmVkaGF0L2NvbmZpZ3M6IGRvIG5vdCBl bmFibGUgQVJDSF9SOUEwOEcwNDYgKEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdC9jb25maWdzOiBy ZWFsaWduIExPQ0tERVBfU1RBQ0tfVFJBQ0VfKl9CSVRTIHdpdGggdXBzdHJlYW0gS0FTQU4gZGVm YXVsdHMgKE1pa2hhaWwgR2F2cmlsb3YpCistIEFkZCBtaXNzaW5nIGNvbmZpZyBmaWxlIGZvciBG ZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gWEZTX09OTElORV9SRVBBSVIgZm9y IEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRW5hYmxlIFNORF9ERVNJR05XQVJFIGZvciBG ZWRvcmEgeDg2IChKdXN0aW4gTS4gRm9yYmVzKQorLSBFbmFibGUgSElEX1NFTlNPUl9QUk9YIGZv ciBGZWRvcmEgeDg2IChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmE6IHNldCBkZWZhdWx0IHBh bmljIHNjcmVlbiB0byBRUiBjb2RlIChKb2NlbHluIEZhbGVtcGUpCistIHJlZGhhdC9jb25maWdz L2ZlZG9yYTogRW5hYmxlIE1QQU0gb3B0aW9ucyAoR2F2aW4gU2hhbikKKy0gcmVkaGF0L2NvbmZp Z3MvcmhlbDogRW5hYmxlIE1QQU0gb3B0aW9ucyAoR2F2aW4gU2hhbikKKy0gY29uZmlnczogYXJt NjQ6IEVuYWJsZSBUZWdyYTQxMCBQTVVzIChNYXJrIFNhbHRlcikKKy0gRGlzYWJsZSBNT0RVTEVf U0lHX0tFWV9UWVBFX01MRFNBXzg3IGZvciBSSEVMIHJpZ2h0IG5vdyAoSnVzdGluIE0uIEZvcmJl cykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfVENQX0FPIGluIGNlbnRvcy1zdHJl YW0gKERhdmlkZSBDYXJhdHRpKSBbUkhFTC0xNDI2MzddCistIEdhdGUgRmVkb3JhIEVMTiBrZXJu ZWwgdXBkYXRlcyBvbiBvcGVuUUEgdGVzdHMgKEFkYW0gV2lsbGlhbXNvbikKKy0gQ2hhbmdlIE1P RFBST0JFX1BBVEggdG8gL3Vzci9iaW4gKEp1c3RpbiBNLiBGb3JiZXMpCistIGNvbmZpZ3M6IHJo ZWw6IHJpc2N2IGNvbmZpZyB1cGRhdGVzIChKZW5uaWZlciBCZXJyaW5nZXIpCistIFJlLWVuYWJs ZSBJbnRlbCBNRUkgZm9yIEZlZG9yYSB4ODYgKEp1c3RpbiBNLiBGb3JiZXMpCistIEVuYWJsZSBN RURJQV9UVU5FUl9NWEwzMDFSRiBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJu IG9uIERWQl9QVDMgZm9yIEZlZG9yYSBhdCB1c2VyIHJlcXVlc3QgKEp1c3RpbiBNLiBGb3JiZXMp CistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09ORklHX0dQSU9fTk9WQUxBS0UgZm9yIHg4NiBv biBSSEVMIChTdGV2ZSBCZXN0KQorLSByZWRoYXQvTWFrZWZpbGU6IGF2b2lkIHBpY2tpbmcgdXAg ZWRpdG9yIGJhY2t1cCBmaWxlcyBpbiBjaGFuZ2Vsb2cgZ2xvYiAoSmFuIFN0YW5jZWspCistIHJl ZGhhdC9jb25maWdzOiBlbmFibGUgQ09ORklHX1NDTFBfT0ZCIGZvciBzMzkweCAoSmFuIFBvbGVu c2t5KQorLSBEZWxldGUgRmVkb3JhIGNvbmZpZ3MgcmVtb3ZlZCB1cHN0cmVhbSBmb3IgNy4xIChK dXN0aW4gTS4gRm9yYmVzKQorLSBhZGQgbWFuLXBhZ2UgZm9yIHJ2LW1vbi1zdGFsbCAoVGhvcnN0 ZW4gTGVlbWh1aXMpCistIEVuYWJsZSBGRkEgZm9yIFRQTSBvbiBBQXJjaDY0IChNYXJjaW4gSnVz emtpZXdpY3opCistIHJlZGhhdDogcmhfZmxhZ3M6IG1hcmsgIUNPTkZJR19SSEVMX0RJRkZFUkVO Q0VTIHN0dWJzIGFzIHN0YXRpYyBpbmxpbmUgKEpvbmF0aGFuIFN0ZWZmYW4pCistIHJlZGhhdDog QWRkIERFTllMSVNULnJoZWwgdG8gQlBGIHNlbGZ0ZXN0cyAoVmlrdG9yIE1hbGlrKQorLSByZWRo YXQvY29uZmlnczogZW5hYmxlIHdhdGNoZG9nIHByZXRpbW91dCBwYW5pYyBmdW5jdGlvbmFsaXR5 IGZvciB4ODYgb24gUkhFTCAoRGF2aWQgQXJjYXJpKQorLSBSZXZlcnQgInJlZGhhdC9jb25maWdz OiBlbmFibGUgQ09ORklHX1dBVENIRE9HX0hSVElNRVJfUFJFVElNRU9VVCIgKERhdmlkIEFyY2Fy aSkKKy0gcmVkaGF0L2NvbmZpZ3M6IHJoZWw6IEVuYWJsZSBTUEQ1MTE4IHNlbnNvciBkcml2ZXIg KEplbm5pZmVyIEJlcnJpbmdlcikKKy0gVHJpbSBjaGFuZ2Vsb2cgYW5kIHJlc2V0IFJIRUxfUkVM RUFTRSBmb3IgNy4xIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgcGVuZGluZyBmb3IgbWlz bWF0Y2hlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVwIHJlYmFzZSB0eXBvIGluIGRyaXZl cnMvcGNpL3F1aXJrcy5jIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgbWlzbWF0YyB3aXRo IEFDUElfUExBVEZPUk1fUFJPRklMRSAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRkIGVwb2NoIHN1 cHBvcnQgZm9yIHJ2IGFuZCBydi1kZWJ1Z2luZm8gcGFja2FnZXMgKEpvaG4gS2FjdXIpCistIERy b3AgdGhlIGhhcmRsaW5rIHN0ZXAgaW4gJSVwb3N0IHNjcmlwdGxldCAoWmJpZ25pZXcgSsSZZHJ6 ZWpld3NraS1Tem1laykKKy0gcmVkaGF0OiBhbGxvdyBnZW5sb2cgdG8gZXhjbHVkZSBjb21taXRz IGFuZCBpc3N1ZXMgYmFzZWQgb24gcmVmIHBhdHRlcm4gKEphbiBTdGFuY2VrKQorLSByZWRoYXQv Y29uZmlnczogZW5hYmxlIHRoZSBESUJTIGRyaXZlciBhcyBpdCBpcyBub3cgcmVxdWlyZWQgZm9y IHRoZSBTTUMgbmV0d29ya2luZyAoRGFuIEhvcsOhaykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJs ZSBDUllQVE9fUEhNQUMgYXMgbW9kdWxlIG9uIHMzOTB4IChEYW4gSG9yw6FrKQorLSByaF9tZXNz YWdlLmg6IHVwZGF0ZSBzdXBwb3J0IHN0YXR1cyBvZiBtbHg1IGRldmljZXMgKFNjb3R0IFdlYXZl cikKKy0gQ29uc29saWRhdGUgY29uZmlncyB0byBjb21tb24gZm9yIDcuMCAoSnVzdGluIE0uIEZv cmJlcykKKy0gUmVtb3ZlIHN0YWxlIGNvbmZpZyBpdGVtcyAoSnVzdGluIE0uIEZvcmJlcykKKy0g cmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfV0FUQ0hET0dfSFJUSU1FUl9QUkVUSU1FT1VU IChEYXZpZCBBcmNhcmkpCistIFR1cm4gb24gQ09ORklHX1BSRUVNUFRfTEFaWSBmb3IgYWxsIGFy Y2hlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBzZWxmdGVzdHMvYnBmOiBBZGQgY3B1 djQgdmFyaWFudCAoVmlrdG9yIE1hbGlrKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTog ZW5hYmxlIENPTkZJR19JTklUX1NUQUNLX0FMTF9aRVJPIChKb2UgU2ltbW9ucy1UYWxib3R0KQor LSBUdXJuIG9tIFNORF9TT0NfVEFTMjc4MV9JMkM9bSBmb3IgeDg2XzY0IChKdXN0aW4gTS4gRm9y YmVzKQorLSBGaXggbWlzbWF0Y2ggZm9yIENPTkZJR19QT1dFUl9TRVFVRU5DSU5HIChKdXN0aW4g TS4gRm9yYmVzKQorLSBzY3JpcHRsZXRzOiBleGl0IDAgb24gZXhwbGljaXQgZXhpdHMgKEFkYW0g V2lsbGlhbXNvbikKKy0gV29yayBhcm91bmQgYmludXRpbHMgdXBkYXRlIGluIHMzOTB4IHBlcmYg KEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBDZW50cmFsaXplIGlvbW11IGRl YnVnZnMgb3B0aW9ucywgYW5kIGVuYWJsZSBhbWQgaW9tbXUgZGVidWdmcyAoSmVycnkgU25pdHNl bGFhcikKKy0gZmVkb3JhOiBhcm02NDogTWFrZSBxY29tIGdlbmkgaTJjLWFkYXB0ZXIgYW5kIGky Yy1oaWQtb2YgZHJpdmVycyBidWlsdGluIChIYW5zIGRlIEdvZWRlKQorLSByZWRoYXQvc3BlYzog UmUtZW5hYmxlIGdkYiBpbmRleCBmb3IgcmlzY3YgY3Jvc3MtY29tcGlsZSAoSmVubmlmZXIgQmVy cmluZ2VyKQorLSByZWRoYXQva2VybmVsLnNwZWM6IGFkZCBhYXJjaDY0IHRvIGZlZG9yYSBzZWN1 cmUgYm9vdCBsaXN0IChKZXJlbXkgQ2xpbmUpCistIFR1cm4gb24gQVNVU19BUk1PVVJZIGRyaXZl ciwgZml4ZXMgUkhCWiAyNDMzMjQ2IChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIFVuaXdp bGwgeDg2IHBsYXRmb3JtIGRyaXZlciAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBHUElC IGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZpeCB1cCBSSEVMIHBlbmRpbmcgQ09O RklHX1BSRUVNUFQgY29uZmlncyBmb3IgNy4wIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAg RmVkb3JhIGNvbmZpZ3MgZm9yIDcuMCAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZp Z3M6IGVuYWJsZSBDT05GSUdfTElWRVVQREFURSBmb3IgZmVkb3JhIChMdWNhIEJvY2Nhc3NpKQor LSByZWRoYXQ6IGdlbmxvZzogYWRkIG5ldyBKSVJBIGNsb3VkIHNlcnZlciBob3N0bmFtZSAoSmFu IFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiByZW1vdmUgQ09ORklHX1pCVUQgKFJhZmFlbCBB cXVpbmkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBlbmFibGUgVVNCX0NISVBJREVB X0lNWCAoSmFyZWQgS2FuZ2FzKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxl IE5WTUVNX1MzMkdfT0NPVFAgKEphcmVkIEthbmdhcykKKy0gcmVkaGF0L3NjcmlwdHM6IHJlbW92 ZSByZW1uYW50cyBvZiBnaXQgbm90ZXMgdXNhZ2UgYW5kIGRlYWQgY29kZSAoSmFuIFN0YW5jZWsp CistIE5ldyBjb25maWdzIGluIGZzL3NtYiAoRmVkb3JhIEtlcm5lbCBUZWFtKQorLSBBZGQgc2ln bmluZyBrZXkgZm9yIE52aWRpYSBCbHVlZmllbGQgR1BVIChFbnJpcXVlIEJlbGFydGUgTHVxdWUp CistIFtnaXRsYWItY2ldIGRlbGF5IHN0YXJ0IHJhd2hpZGUgY2xhbmcgcGlwZWxpbmVzIGJ5IDMg bWlucy4gKFNpbW9uZSBUb2xsYXJkbykKKy0gZmVkb3JhOiBVcGRhdGVzIGZvciB0aGUgNy4wIG1l cmdlIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBkaXNhYmxlIEthYW5hcGFsaSBieSBkZWZh dWx0IChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBtaW5vciBiZWVwZXIgY2xlYW51cHMgKFBl dGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogdW5pZnkgQ09ORklHX0NBTiBmb3IgUkhF TCBhbmQgRmVkb3JhIChSYWR1IFJlbmRlYykKKy0gcmVkaGF0OiBhZGQgYSB3ZWFrIHJlbGF0aW9u c2hpcCBiZXR3ZWVuIG1vZHVsZXMtaW50ZXJuYWwgYW5kIHNlbGZ0ZXN0cyAoSmFuIFN0YW5jZWsp CistIG5ldyBjb25maWcgaW4gZHJpdmVycy9waHkgKEl6YWJlbGEgQmFrb2xsYXJpKQorLSBSZXNl dCB0aGUgY2hhbmdlbG9nIGZvciA3LjAtcmMxIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBIGNvdXBs ZSBtb3JlIHF1aWNrIGltcG9ydGFudCA3LjAgY29uZmlnIHVwZGF0ZXMgZm9yIEZlZG9yYSAoSnVz dGluIE0uIEZvcmJlcykKKy0gQSBjb3VwbGUgb2YgcXVpY2sgaW1wb3J0YW50IDcuMCBjb25maWcg dXBkYXRlcyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczog ZW5hYmxlIENPTkZJR19BUVRJT04gb24gYWxsIGFyY2hzIChNaWNoYWwgU2NobWlkdCkgW1JIRUwt MTUwODUzXQorLSBBZGQgc2lnbmluZyBrZXkgZm9yIE52aWRpYSBKZXRzb24gKEVucmlxdWUgQmVs YXJ0ZSkKKy0gY29uZmlnczogZW5hYmxlIEZyZWVzY2FsZSBNWFMgRE1BIGVuZ2luZSAoSmlyaSBC ZW5jKQorLSByZWRoYXQvZHJhY3V0LXZpcnQuY29uZjogcmVtb3ZlIGVycm9uZW91cyBzcGFjZXMg aW4gb21pdF9kcmFjdXRtb2R1bGVzIChMaSBUaWFuKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVt cGxhdGU6IE1ha2UgLXVraS1kdGJsb2FkZXIgcHJvdmlkZSBrZXJuZWwtY29yZS11bmFtZS1yIChI YW5zIGRlIEdvZWRlKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IEFkZCBrZXJuZWwt dWtpLWR0YmxvYWRlciBzdWItcGFja2FnZSAoSGFucyBkZSBHb2VkZSkKKy0gcmVkaGF0L2tlcm5l bC5zcGVjLnRlbXBsYXRlOiBTaW1wbGlmeSB1a2ktdmlydCBzaWduaW5nIChIYW5zIGRlIEdvZWRl KQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IEZpeCBpbmRlbnRhdGlvbiBvZiB1a2kt dmlydCBnZW5lcmF0aW9uIGNvZGUgKEhhbnMgZGUgR29lZGUpCistIEZpeCBtaXNtYXRjaCBmb3Ig Q09ORklHX1BPV0VSX1NFUVVFTkNJTkcgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZpeCB1cCBhIGNv dXBsZSBvZiBtaXNtYXRjaGVzIHdpdGggUFJFRU1QVF9MQVpZIGFuZCB4ODYgU05EX1NPQ19UQVMy NzgxX0kyQyBmb3IgUkhFTCAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBDT05GSUdfUFJF RU1QVCBpbiBwZW5kaW5nIHRvIGF2b2lkIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBU dXJuIG9mZiBDT05GSUdfU01CX0tVTklUX1RFU1RTIGluIHBlbmRpbmcgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIFRyaW0gdGhlIGNoYW5nZWxvZyBmb3IgNy4wIChKdXN0aW4gTS4gRm9yYmVzKQorLSBS ZXNldCBSSEVMX1JFTEVBU0UgZm9yIHRoZSA3LjAgc2VyaWVzIChKdXN0aW4gTS4gRm9yYmVzKQor LSByZWRoYXQvY29uZmlnczogcmVuYW1lIENPTkZJR19RQ09NX1FGUFJPTSB0byBDT05GSUdfTlZN RU1fUUNPTV9RRlBST00gKEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdC9kcmFjdXQtdmlydC5jb25m OiBvbWl0IGRybSBkcml2ZXJzIGluIFVLSSBpbml0cmQgKExpIFRpYW4pIFtSSEVMLTE0NzI5Nl0K Ky0gUHJldmVudCBzdHJpcHBpbmcgb2YgcnRsYSBhbmQgcnYgYmluYXJpZXMgZHVyaW5nIGluc3Rh bGwgKEpvaG4gS2FjdXIpCistIEZpeCBydGxhIGFuZCBydiBkZWJ1Z2luZm8gcGFja2FnZSBkZWZp bml0aW9ucyAoSm9obiBLYWN1cikKKy0gQWRkIGRlYnVnaW5mbyBwYWNrYWdlIGZvciBydGxhIHRv b2wgKEpvaG4gS2FjdXIpCistIEFkZCBkZWJ1Z2luZm8gcGFja2FnZSBmb3IgcnYgdG9vbCAoSm9o biBLYWN1cikKKy0gQ29uc29saWRhdGUgY29uZmlncyB0byBjb21tb24gZm9yIDYuMTkgKEp1c3Rp biBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBTZXQgQ09ORklHX1BUUF9TMzkwPXkgKE1l dGUgRHVybHUpIFtSSEVMLTE0MTY0N10KKy0gW2dpdGxhYi1jaV0gdGFnLWNraS1nYXRpbmc6IHJl ZmFjdG9yIHRvIHVzZSBHSVRfU1RSQVRFR1k9ZW1wdHkgKFBhdHJpY2sgVGFsYmVydCkKKy0gZWZp OiBGaXggc3dhcHBlZCBhcmd1bWVudHMgdG8gYnNlYXJjaCgpIGluIGVmaV9zdGF0dXNfdG9fKigp IChEb25nZG9uZyBUYW8pCistIHJlZGhhdC9jb25maWdzOiBTaGlwIG5mdF9vc2Yua28gaW4gRmVk b3JhLCB0b28gKFBoaWwgU3V0dGVyKQorLSBTZXQgRmVkb3JhIGNvbmZpZ3MgZm9yIDYuMTkga2Vy bmVscyAoSnVzdGluIE0uIEZvcmJlcykKKy0gY29uZmlnczogZW5hYmxlIEZVTkNUSU9OX0dSQVBI X1JFVFZBTCBldmVyeXdoZXJlIChKZXJvbWUgTWFyY2hhbmQpCistIGNvbmZpZ3M6IHJpc2N2OiBF bmFibGUgQVJDSF9FU1dJTiBmb3IgQ2VudE9TIChKZW5uaWZlciBCZXJyaW5nZXIpCistIGNvbmZp Z3M6IHJpc2N2OiBFbmFibGUgU3RhckZpdmUgZHJpdmVycyBmb3IgQ2VudE9TIChKZW5uaWZlciBC ZXJyaW5nZXIpCistIGNvbmZpZ3M6IHJpc2N2OiBFbmFibGUgY29tbW9uIGhhcmR3YXJlIGRyaXZl cnMgZm9yIENlbnRPUyAoSmVubmlmZXIgQmVycmluZ2VyKQorLSByZWRoYXQ6IGV4Y2x1ZGUgREVS SVZBVElWRV9CVUlMRCBhbmQgREVSSVZBVElWRV9WRVJTSU9OIGZyb20gc2VsZi10ZXN0IGRhdGEg KEphbiBTdGFuY2VrKQorLSBmZWRvcmE6IGFybTY0OiBtYWtlIHBpbmN0cmwtbXNtODkxNiBidWls dC1pbiAoU2FtIERheSkKKy0gW2dpdGxhYi1jaV0gcmF3aGlkZV9yZWxlYXNlOiBzZXQgRkZfVVNF X05FV19CQVNIX0VWQUxfU1RSQVRFR1k9dHJ1ZSAoUGF0cmljayBUYWxiZXJ0KQorLSByZWRoYXQ6 IGFkZCB1c2JpbyBrbW9kIHBsYWNlbWVudCBydWxlIChKYW4gU3RhbmNlaykKKy0gUmVuYW1lIHdp dGhfdXAgdG8gd2l0aF9zdG9jay4gKEFsZXhhbmRyYSBIw6Fqa292w6EpCistIHJlZGhhdDogZGVy ZWZlcmVuY2UgR0lUSUQgZHVyaW5nIHRhcmJhbGwgY3JlYXRpb24gKEphbiBEcsO2Z2Vob2ZmKQor LSByZWRoYXQvY29uZmlnczogRGlzYWJsZSBDT05GSUdfSU5URUxfVEggb24gUkhFTCAoRGF2aWQg QXJjYXJpKQorLSBSZXZlcnQgIltyZWRoYXRdIHRlbXBvcmFyaWx5IGRpc2FibGUgQ09ORklHX0NS WVBUT19ERVZfU1BfUFNQIiAoU2NvdHQgV2VhdmVyKQorLSBrZXJuZWwtdG9vbHM6IHNwbGl0IHRo ZSBweXRob24gdG9vbHMgb2ZmIChQZXRlciBSb2JpbnNvbikKKy0gZ2l0bGFiLWNpOiBzZXQgYWxs b3dfZmFpbHVyZSBmb3IgdGhlIHJhd2hpZGUtcmVsZWFzZSBqb2IgKFBhdHJpY2sgVGFsYmVydCkK Ky0gcmVkaGF0OiBleHBvcnQgRkxBVk9SIChKb3NlIElnbmFjaW8gVG9ybm9zIE1hcnRpbmV6KQor LSByZWRoYXQ6IEFkZCBkb2N1bWVudGF0aW9uIGNvbW1lbnRzIHRvIGtlcm5lbC5zcGVjLnRlbXBs YXRlIG1hY3JvcyAoQWxleGFuZHJhIEjDoWprb3bDoSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJs ZSBydHc4OTIyYWUgZm9yIHJoZWwgKEpvc2UgSWduYWNpbyBUb3Jub3MgTWFydGluZXopCistIGtl cm5lbC5zcGVjLnRlbXBsYXRlOiBDbGVhbnVwIHBhY2thZ2VfbmFtZSB1c2UgKFByYXJpdCBCaGFy Z2F2YSkKKy0gUmV2ZXJ0ICJUdXJuIG9uIENPTkZJR19ERUJVR19JTkZPX0NPTVBSRVNTRURfWkxJ QiIgKExpYW5ibyBKaWFuZykKKy0gZmVkb3JhOiBhYXJjaDY0OiBFbmFibGUgQlNUIHBsYXRmb3Jt IHN1cHBvcnQgKFdlaXpoYW8gT3V5YW5nKQorLSBmZWRvcmE6IGFhcmNoNjQ6IEVuYWJsZSBUSV9T Q0lfSU5UUl9JUlFDSElQIGFzIGJ1aWx0LWluIChBeXVzaCBTaW5naCkKKy0gRmVkb3JhOiBhcm06 IGFhcmNoNjQ6IEVuYWJsZSBtYW5kYXRvcnkgQ09ORklHcyBmb3IgUUNTODMwMCAoU2hpdmVuZHJh IFByYXRhcCkKKy0gZmVkb3JhOiB1cGRhdGVzIGZvciB0aGUgNi4xOSBtZXJnZSAoUGV0ZXIgUm9i aW5zb24pCistIHJlZGhhdC9zZWxmLXRlc3Q6IHJlZnJlc2ggd2l0aCBuZXcgdmFyaWFibGVzIChT Y290dCBXZWF2ZXIpCistIGdpdGxhYi1jaTogZW5hYmxlIGMxMHMgYXV0b21vdGl2ZSBwYWNrYWdl IGJ1aWxkIChTY290dCBXZWF2ZXIpCistIGF1dG9tb3RpdmU6IGFkZCBjb25maWd1cmFibGUgcGFj a2FnZSBuYW1lIGFuZCBkaXN0dGFnIHZhcmlhYmxlcyAoU2NvdHQgV2VhdmVyKQorLSBGaXggdXAg emZjcGR1bXAgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9rZXJuZWwuc3Bl Yy50ZW1wbGF0ZTogTGV0IGtlcm5lbC1tb2R1bGVzIGluc3RhbGxhdGlvbiByZWJ1aWxkIGluaXRy ZCBpbiBVS0kgc3lzdGVtIChMaSBUaWFuKSBbUkhFTC0xMzUyNTZdCistIHJlc3RvcmUgSFlQRVJW IGNvbmZpZ3MgdG8gNi4xNyBzdGF0ZSAoUGFvbG8gQm9uemluaSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IGF1dG9tb3RpdmU6IGVuYWJsZSBOWFBfU1RNX1RJTUVSIChKYXJlZCBLYW5nYXMpCistIHJlZGhh dC9jb25maWdzOiBhdXRvbW90aXZlOiBlbmFibGUgUzMyR19XRFQgKEphcmVkIEthbmdhcykKKy0g cmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBOWFAgUzMyIG9uIGFhcmNoNjQgYXV0bW90aXZlIChBbGVz c2FuZHJvIENhcm1pbmF0aSkKKy0gUmVzZXQgUkhFTF9SRUxFQVNFIGZvciB0aGUgNi4xOSBjeWNs ZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gYWRkIGxpYmFzYW4tc3RhdGljIGFuZCBsaWJ1YnNhbiBh cyBCUiBmb3Igc2VsZnRlc3RzIChUaG9yc3RlbiBMZWVtaHVpcykKKy0gYWRkIGxpYnVyaW5nLWRl dmVsIGFzIEJSIGZvciBzZWxmdGVzdHMgKFRob3JzdGVuIExlZW1odWlzKQorLSBhZGQgYSBmZXcg b3B0aW9uYWwgQlJzIGZvciBwZXJmIChUaG9yc3RlbiBMZWVtaHVpcykKKy0gQ29uc29saWRhdGUg Y29uZmlncyBpbnRvIGNvbW1vbiBmb3IgNi4xOCAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0 L2NvbmZpZ3M6IG1ha2UgQ09ORklHX0RSTV9DTElFTlRfTElCPXkgKEpvY2VseW4gRmFsZW1wZSkK Ky0gZmVkb3JhOiBhcm06IG1pbm9yIGNvbmZpZyB1cGRhdGVzIChQZXRlciBSb2JpbnNvbikKKy0g Q2hhbmdlIFJaX0RNQUMgZnJvbSBtIHRvIHkgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykK Ky0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGVuYWJsZSBDQU5fRkxFWENBTiAoSmFyZWQg S2FuZ2FzKQorLSBSZXZlcnQgIlJlbW92aW5nIE9ic29sZXRlIGhiYSBwY2ktaWRzIGZyb20gcmhl bDgiIChTY290dCBXZWF2ZXIpCistIHJoX21lc3NhZ2VzLmg6IGFkZCBtaXNzaW5nIGxwZmMgZGV2 aWNlcyAoU2NvdHQgV2VhdmVyKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19ORlNE X1Y0XzJfSU5URVJfU1NDIGluIFJIRUwgKFNjb3R0IE1heWhldykKKy0gcmVkaGF0OiBQYWNrYWdl IG5ldC9oc3Igc2VsZnRlc3RzIChGZWxpeCBNYXVyZXIpCistIFJlbW92ZSByZWR1bmRhbnQgRmVk b3JhIFZGSU8gb3ZlcnJpZGVzIChEYW5pZWwgUC4gQmVycmFuZ8OpKQorLSBFbmFibGUgQ09ORklH X1ZGSU9fREVWSUNFX0NERVYgb24gRmVkb3JhIChEYW5pZWwgUC4gQmVycmFuZ8OpKQorLSByZWRo YXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIEkyQ19JTVggYW5kIGRlcGVuZGVuY2llcyAo SmFyZWQgS2FuZ2FzKQorLSBTZXQgc29tZSBsYXRlIGFycml2YWwgY29uZmlnIG9wdGlvbnMgZm9y IEZlZG9yYSA2LjE4IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxl IE1pY2VsIFBIWSBmb3IgTlhQIEF1dG9tb3RpdmUgU29DcyBTMzJHMnh4L1MzMkczeHgvUzMyUjQ1 IChBbGVzc2FuZHJvIENhcm1pbmF0aSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBTeW5vcHNp cyBEV01BQyBJUCBvbiBOWFAgQXV0b21vdGl2ZSBTb0NzIFMzMkcyeHgvUzMyRzN4eC9TMzJSNDUg KEFsZXNzYW5kcm8gQ2FybWluYXRpKQorLSByZWRoYXQvY29uZmlnczogTW92ZSBDT05GSUdfTUlD Uk9DT0RFX0RCRyB0byBjb21tb24vZ2VuZXJpYy94ODYgKFdhaW1hbiBMb25nKQorLSByZWRoYXQv Y29uZmlnczogU2V0IENPTkZJR19TQ0hFRF9QUk9YWV9FWEVDPW4gKFdhaW1hbiBMb25nKQorLSBB ZGQgbG9vbmdhcmNoIHRvIGtlcm5lbC1oZWFkZXJzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIFR1cm4gb24gU1lOVEhfRVZFTlRTIGZvciBSSVNDViBSSEVMIHRvIGF2b2lkIGEgbWlz bWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gUENJX1BXUkNUUkxfU0xPVCBmb3Ig YWFyY2g2NCBpbiBSSEVMIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMu dGVtcGxhdGU6IGFkZCBuZXQvY2FuIGtzZWxmdGVzdHMgKERhdmlkZSBDYXJhdHRpKQorLSByZWRo YXQvY29uZmlnczogRW5hYmxlIENPTkZJR19PVk1GX0RFQlVHX0xPRyBpbiBSSEVMIChMZW5ueSBT enVib3dpY3opIFtSSEVMLTEwMDEwNF0KKy0gbWVyZ2UtbGludXgtbmV4dDogdXNlIGdpdGxhYiBy ZW1vdGUgKFNjb3R0IFdlYXZlcikKKy0gcmVkaGF0OiB1c2UgUkVMRUFTRV9MT0NBTFZFUlNJT04g YWxzbyBmb3IgZGlzdC1nZXQtdGFnIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBjb25maWdzOiBy aGVsOiBFbmFibGUgT1YwOFg0MCBzZW5zb3IgdG8gc3VwcG9ydCBJbnRlbCBNSVBJIGNhbWVyYSAo S2F0ZSBIc3VhbikKKy0gcmVkaGF0OiBjb25maWdzOiByaGVsOiBFbmFibGUgdXNiaW8tZHJpdmVy cyB0byBzdXBvd2VyIEludGVsIE1JUEkgY2FtZXJhIChLYXRlIEhzdWFuKQorLSByZWRoYXQ6IGNv bmZpZ3M6IEVuYWJsZSBEV0MzIEdlbmVyaWMgUGxhdGZvcm0gRHJpdmVyIG9uIFJIRUwgYXV0b21v dGl2ZSAoRGVzbmVzIE51bmVzKSBbUkhFTC0xMTkzMjZdCistIHJlZGhhdDogY29uZmlnczogRW5h YmxlIE9WMDhYNDAgc2Vuc29yIGRyaXZlciBvbiBSSEVMIChEZXNuZXMgTnVuZXMpIFtSSEVMLTEx OTMyNl0KKy0gcmVkaGF0OiBjb25maWdzOiBFbmFibGUgVVNCSU8gQnJpZGdlIHN1cHBvcnQgb24g UkhFTCB4ODYgKERlc25lcyBOdW5lcykgW1JIRUwtMTE5MzI2XQorLSBnaXRsYWItY2k6IHRlc3Rp bmcgKFNjb3R0IFdlYXZlcikKKy0gYXJrLWxpbnV4LW5leHQ6IGNoZWNrIGZvciBnaXQgaG9va3Mg ZGlyZWN0b3J5IChTY290dCBXZWF2ZXIpCistIGdpdGxhYi1jaTogbWVyZ2UtbGludXgtbmV4dDog d29ya2Fyb3VuZCBweWRhbnRpYy1jb3JlIGJ1aWxkIGVycm9yIChTY290dCBXZWF2ZXIpCistIHJl ZGhhdDogcmVtb3ZlIEVBUkxZIHlzdHJlYW0gYml0cyAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9j b25maWdzOiAgY29uZmlndXJlIENPTkZJR19BVEgxMktfQUhCIGZvciByaGVsIChKb3NlIElnbmFj aW8gVG9ybm9zIE1hcnRpbmV6KQorLSBGaW5hbCBjb25maWdzIGZvciBGZWRvcmEgNi4xOCAoSnVz dGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBhZGRpdGlvbmFsIFJWIG1v bml0b3JzIG9uIGRlYnVnIGtlcm5lbHMgKEdhYnJpZWxlIE1vbmFjbykKKy0gcmVkaGF0L2NvbmZp Z3M6IEVuYWJsZSBzY2hlZCBhbmQgcnRhcHAgUlYgbW9uaXRvcnMgKEdhYnJpZWxlIE1vbmFjbykK Ky0gcmVkaGF0L2NvbmZpZ3M6IE1vdmUgQ09ORklHX1JWX1BFUl9UQVNLX01PTklUT1JTIHRvIGNv bW1vbi9nZW5lcmljIChHYWJyaWVsZSBNb25hY28pCistIHByb3Blcmx5IHJlc2V0IENPTkZJR19F RklfU0JBVF9GSUxFIHZhbHVlIChUaG9yc3RlbiBMZWVtaHVpcykKKy0ga2VybmVsOiBleHRlbmQg cmhfd2FpdmVkIHRvIGNvcGUgYmV0dGVyIHdpdGggdGhlIENWRSBtaXRpZ2F0aW9ucyBjYXNlIChS aWNhcmRvIFJvYmFpbmEpIFtSSEVMLTEyMjk3OV0KKy0gdWtpLXZpcnQ6IGFkZCBzeXN0ZW1kLXJl cGFydCBtb2R1bGUgKEVtYW51ZWxlIEdpdXNlcHBlIEVzcG9zaXRvKQorLSBmZWRvcmE6IGNsZWFu dXAvZGUtZHVwZSB0aGUgVVNCIGNvbmZpZ2ZzIG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSBm ZWRvcmE6IGNsZWFudXAvZGUtZHVwZSB0aGUgVVNCIERldmljZS9HYWRnZXQgY29uZmlnIChQZXRl ciBSb2JpbnNvbikKKy0gZmVkb3JhOiBEaXNhYmxlIHRoZSByZW1hbmVudHMgb2YgbGVnYWN5IFVT QiBnYWRnZXQgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGkzYzogZW5hYmxlIG1vcmUgaTNj IChQZXRlciBSb2JpbnNvbikKKy0gQ29uZmlnczogTWFyayBTQ0hFRF9NQyBhcyBlbmFibGVkIGZv ciBwb3dlcnBjIChQaGlsIEF1bGQpCistIHJlZGhhdDogdXBkYXRlIHNlbGYtdGVzdC1kYXRhIGZv ciBSRUxFQVNFX0xPQ0FMVkVSU0lPTiAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogaW50cm9kdWNl IFJFTEVBU0VfTE9DQUxWRVJTSU9OIHZhcmlhYmxlIChKYW4gU3RhbmNlaykKKy0gVHVybiBvbiBD T05GSUdfREVCVUdfSU5GT19DT01QUkVTU0VEX1pMSUIgKExpYW5ibyBKaWFuZykKKy0gcmVkaGF0 L2tlcm5lbC5zcGVjOiBtYWtlIHB5dGhvbjMtcGVyZiBnbG9iIG1vcmUgc3BlY2lmaWMgKEphbiBT dGFuY2VrKQorLSBmZWRvcmE6IGFybTY0OiBVcGRhdGVzIGZvciBBTUQgWGlsaW54IGRldmljZXMg KFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogUmUtZW5hYmxlIFJhc3BiZXJyeSBQ aSBzdXBwb3J0IGluIGF1dG9tb3RpdmUgKFJhZHUgUmVuZGVjKQorLSByZWRoYXQvY29uZmlnczog YXV0b21vdGl2ZTogZW5hYmxlIEZTTF9FRE1BIChKYXJlZCBLYW5nYXMpCistIFRyaW0gY2hhbmdl bG9nIG9mIGR1cGVzIGZvciB0aGUgNi4xOCByZXNldCAoSnVzdGluIE0uIEZvcmJlcykKKy0gZmVk b3JhOiBhYXJjaDY0OiBFbmFibGUgYXJtIE1IVXYyIGRyaXZlciAoUGV0ZXIgUm9iaW5zb24pCist IHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBlbmFibGUgUlRDX0RSVl9TMzJHIChKYXJlZCBL YW5nYXMpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBzd2l0Y2ggdWZzLXFjb20gdG8g bW9kdWxlIChFcmljIENoYW51ZGV0KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogc3dp dGNoIGdlbmktc2UgYW5kIHNlcmlhbC1xY29tLWdlbmkgdG8gbW9kdWxlcyAoRXJpYyBDaGFudWRl dCkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IHN3aXRjaCBwaW5jdHJsX21zbSBhbmQg cGluY3RybF9zYTg3NzVwIHRvIG1vZHVsZXMgKEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdDogYWRk IGFsbCBuYW1lc3BhY2UtZGVwZW5kZW50IHNlbGZ0ZXN0cyB0byBrZXJuZWwtc2VsZnRlc3RzLWlu dGVybmFsIChKb2VsIFNhdml0eikKKy0gZmVkb3JhOiBNaW5vciBRQ29tIGNvbmZpZ3MgY2xlYW51 cCAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogY2xlYW51cCBub3cgcmVtb3ZlZCBCQ0FDSEVG UyBvcHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBMYXN0IHVwZGF0ZXMgZm9yIDYu MTggKFBldGVyIFJvYmluc29uKQorLSBUdXJuIG9uIFg4Nl9GUkVEIGZvciBGZWRvcmEgKEp1c3Rp biBNLiBGb3JiZXMpCistIEZpeCB1cCBIWVBFUlYgY29uZmlncyBmb3IgNi4xOCAoSnVzdGluIE0u IEZvcmJlcykKKy0gYWRkIHh4ZCB0byBhcyBCdWlsZFJlcXVpcmUgZm9yIGJwZiBzZWxmdGVzdHMg KFRob3JzdGVuIExlZW1odWlzKQorLSBGbGlwIEhJRF9IQVBUSUMgdG8gaW5saW5lIGZvciBGZWRv cmEgZHVlIHRvIHN5bWJvbCBlcnJvcnMgKEp1c3RpbiBNLiBGb3JiZXMpCistIGZlZG9yYTogdXBk YXRlcyBmb3IgNi4xOCAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90 aXZlOiBlbmFibGUgU1BJX09NQVAyNFhYIGFzIGEgbW9kdWxlIChKYXJlZCBLYW5nYXMpCistIEZp eCB1cCBtaXNtYXRjaCB3aXRoIFBDSV9QV1JDVFJMX1NMT1Qgb24gYXJtIChKdXN0aW4gTS4gRm9y YmVzKQorLSBUdXJuIG9uIERSTV9BQ0NFTF9ST0NLRVQgRk9SIEZlZG9yYSAoSnVzdGluIE0uIEZv cmJlcykKKy0gcmVkaGF0OiBycG1pbnNwZWN0OiB1cGRhdGUgZW1wdHlycG0gbGlzdCBmb3Iga2Vy bmVsIHZhcmlhbnRzIChQYXRyaWNrIFRhbGJlcnQpCistIHJlZGhhdDogYXJrLWxpbnV4LW5leHQu c2g6IGluaXRpYWwgY29tbWl0IChTY290dCBXZWF2ZXIpCistIHJlZGhhdDogcHJlcGFyZS1jb21t aXQtbXNnOiBpbml0aWFsIGNvbW1pdCAoU2NvdHQgV2VhdmVyKQorLSByZWRoYXQ6IGFyay1tZXJn ZS1kcml2ZXI6IGluaXRpYWwgY29tbWl0IChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9NYWtlZmls ZTogYWRkIGRpc3QtY29uZmlncy1jb21taXQtbWlzbWF0Y2hlcyAoU2NvdHQgV2VhdmVyKQorLSBG bGlwIFNDSEVEX01DIGZvciBSSEVMIHBwYyB0byBhdm9pZCBhIG1pc21hdGNoIChKdXN0aW4gTS4g Rm9yYmVzKQorLSBSZXZlcnQgIk1lcmdlIGJyYW5jaCAnYWRkX25leHRfc2NoZWRfam9iJyBpbnRv ICdvcy1idWlsZCciIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgYSBtZXJnZSB3aW5kb3cg bWlzbWF0Y2ggZm9yIHJpc2N2IFJIRUwgKEp1c3RpbiBNLiBGb3JiZXMpCistIFJlc2V0IFJIRUxf UkVMRUFTRSBmb3IgdGhlIDYuMTggY3ljbGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24g VVNCX0ZVTkNUSU9ORlMgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2Nv bmZpZ3M6IERpc2FibGUgQ09ORklHX0VGSV9NSVhFRCBpbiBSSEVMIChMZW5ueSBTenVib3dpY3op CistIFJldmVydCAiTWVyZ2UgYnJhbmNoICd0bXAyJyBpbnRvICdvcy1idWlsZCciIChKdXN0aW4g TS4gRm9yYmVzKQorLSBBbHdheXMgc2V0IExMVk09MSB3aGVuIGJ1aWxkaW5nIHdpdGggY2xhbmcg KFRvbSBTdGVsbGFyZCkKKy0gcmVkaGF0L2NvbmZpZ3M6IE1vdmUgQ09ORklHX01JVElHQVRJT05f Vk1TQ0FQRSB0byBjb21tb24vZ2VuZXJpYy94ODYgKFdhaW1hbiBMb25nKQorLSByZWRoYXQvTWFr ZWZpbGU6IFVwZGF0ZSB0aGUgbWFrZSB0YXJnZXQgZGlzdC1jb25maWdzLWNoZWNrIHRvIGZhaWwg KEFsZXhhbmRyYSBIw6Fqa292w6EpCistIENvbnNvbGlkYXRlIGNvbmZpZ3MgdG8gY29tbW9uIGZv ciA2LjE3IChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgMTAxMC1jb25maWctbmV3bGluZXMtdGVz dC5iYXRzIHNlbGYgdGVzdC4gKEFsZXhhbmRyYSBIw6Fqa292w6EpCistIG9zLWJ1aWxkOiBSZW1v dmUgZGVhZCBDT05GSUdfU0NIRURfREVCVUcgZmlsZXMgKFBoaWwgQXVsZCkKKy0gcmVkaGF0L2Nv bmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgQ09NUEFUXzMyQklUX1RJTUUgU0dFVE1BU0tfU1lT Q0FMTCBhbmQgSUEzMl9FTVVMQVRJT04gY29uZmlncyAoRG9yaW5kYSBCYXNzZXkpCistIFJldmVy dCAicmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgTmV0TGFiZWwgc3Vic3lzdGVt IHN1cHBvcnQiIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0OiBhcmstbGludXgtbmV4dC5zaDog aW5pdGlhbCBjb21taXQgKFNjb3R0IFdlYXZlcikKKy0gcmVkaGF0OiBwcmVwYXJlLWNvbW1pdC1t c2c6IGluaXRpYWwgY29tbWl0IChTY290dCBXZWF2ZXIpCistIHJlZGhhdDogYXJrLW1lcmdlLWRy aXZlcjogaW5pdGlhbCBjb21taXQgKFNjb3R0IFdlYXZlcikKKy0gcmVkaGF0L01ha2VmaWxlOiBh ZGQgZGlzdC1jb25maWdzLWNvbW1pdC1taXNtYXRjaGVzIChTY290dCBXZWF2ZXIpCistIFR1cm4g b24gUElOQ1RSTF9TTTg1NTBfTFBBU1NfTFBJIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMp CistIHJlZGhhdDogY29uZmlnczogZHJvcCBUSV9LM19VRE1BICYgVElfSzNfVURNQV9HTFVFX0xB WUVSIGZyb20gUkhFTCAoRXJpYyBDaGFudWRldCkKKy0gcmVkaGF0OiBjb25maWdzOiBtb3ZlIFRJ X1NDSV9QUk9UT0NPTCBhbmQgVElfTUVTU0FHRV9NQU5BR0VSIHRvIGNvbW1vbiAoRXJpYyBDaGFu dWRldCkKKy0gU2V0IENPTkZJR19NSVRJR0FUSU9OX1ZNU0NBUEUgZm9yIEZlZG9yYSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gcmVkaGF0L01ha2VmaWxlOiB1cGRhdGUgZGlzdC12ci1jaGVjayAoU2Nv dHQgV2VhdmVyKQorLSBnaXRsYWItY2k6IGFkZCBrY2lkYl90cmVlX25hbWUgdG8gdHJlZXMgKFRh bGVzIGRhIEFwYXJlY2lkYSkKKy0gRml4IHBhY2thZ2luZyBmb3IgbGliY3B1cG93ZXIgcHl0aG9u IGJpbmRpbmcgZGVidWdpbmZvIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczog YXV0b21vdGl2ZTogZW5hYmxlIFRJIEszIFI1RiByZW1vdGVwcm9jIGRyaXZlciAoSmFyZWQgS2Fu Z2FzKQorLSBNb3ZlIENPTkZJR19TQ0hFRF9QUk9YWV9FWEVDIHRvIHRoZSB6ZmNwZHVtcCBkaXJl Y3RvcnkgKEp1c3RpbiBNLiBGb3JiZXMpCistIFNldCBGZWRvcmEgY29uZmlncyBmb3IgNi4xNyAo SnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBzY3JpcHRzOiBpZ25vcmUgaW5jb3JyZWN0IHNo ZWxsY2hlY2sgMjMyOSBpbiB0cmFwIGZ1bmN0aW9uIChTaW1vbmUgVG9sbGFyZG8pCistIFR1cm4g b24gUEhZX1JPQ0tDSElQX1NBTVNVTkdfRENQSFkgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJl cykKKy0gcmhfbWVzc2FnZXMuaDogYWRkIG1pc3NpbmcgYWFjcmFpZCBkZXZpY2UgKFNjb3R0IFdl YXZlcikKKy0gcmhfbWVzc2FnZXMuaDogdXBkYXRlIHVubWFpbnRhaW5lZCBkcml2ZXJzIChTY290 dCBXZWF2ZXIpCistIGFybTY0OiBlbmFibGUgVGVncmEyNjQgU29DIGNvbXBvbmVudHMgaW4gUkhF TCAoTWFyY2luIEp1c3praWV3aWN6KQorLSByZWRoYXQ6IGV4cG9ydCBvbmx5IHNlbGVjdGVkIHZh cmlhYmxlcyAoSmFuIFN0YW5jZWspCistIGdpdGxhYi1jaTogc2V0IEhPTUUgaW4gbWFpbnRlbmFu Y2Ugam9icyAoVGFsZXMgZGEgQXBhcmVjaWRhKQorLSBnaXRsYWItY2k6IHJlbW92ZSBmZXRjaCBv ZiBsaW51eC1ydC1kZXZlbCAoU2NvdHQgV2VhdmVyKQorLSByZWRoYXQvTWFrZWZpbGU6IGF1dG8g c2VsZWN0IC16LXRlc3QtcGVzaWduIHRhcmdldCBmb3Igei1zdHJlYW0gKEphbiBTdGFuY2VrKQor LSByZWRoYXQvY29uZmlnczogTW92ZSBSSEVML0ZlZG9yYSBsb2NrZG93biBjb25maWdzIHRvIGNv bW1vbiAoSmVyZW15IENsaW5lKQorLSBFbmFibGUgYnVpbGRpbmcgbGliY3B1cG93ZXIgYmluZGlu Z3MgZm9yIEVMTi9SYXdoaWRlIChKb2huIEIuIFd5YXR0IElWKQorLSByZWRoYXQ6IEV4cGxpY2l0 bHkgZGlzYWJsZSAnaG9zdG9ubHknIG1vZGUgb24gdGhlIGRyYWN1dCBjbWRsaW5lIChWaXRhbHkg S3V6bmV0c292KQorLSByZWRoYXQ6IERpcmVjdGx5IHVzZSAndWtpZnknIGZvciBidWlsZGluZyB0 aGUgVUtJIChWaXRhbHkgS3V6bmV0c292KQorLSByZWRoYXQ6IFRlbXBvcmFyeSBzdG9wIGFkZGlu ZyAna2VybmVsJyBjb21wb25lbnQgdG8gU0JBVCAoVml0YWx5IEt1em5ldHNvdikKKy0gcmVkaGF0 L2NvbmZpZ3M6IFJlbW92ZSBvYnNvbGV0ZSBDT05GSUcgZmlsZXMgLSBwYXJ0IDEgKFdhaW1hbiBM b25nKQorLSByZWRoYXQvTWFrZWZpbGU6IGFkZCBkaXN0LXNwZWMgKFNjb3R0IFdlYXZlcikKKy0g cmVkaGF0OiBTd2l0Y2ggdG8gaW1wbGljaXQgZW5hYmxlbWVudCBvZiBDT05GSUdfRUZJX1NCQVRf RklMRSAoVml0YWx5IEt1em5ldHNvdikKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBlYXJseSBs b2NrZG93biBmb3IgQXJtIChNYXJrIFNhbHRlcikgW1JIRUwtMTkyN10KKy0gYXJtNjQ6IGFkZCBl YXJseSBsb2NrZG93biBmb3Igc2VjdXJlIGJvb3QgKE1hcmsgU2FsdGVyKSBbUkhFTC0xOTI3XQor LSBlZmk6IHBhc3Mgc2VjdXJlIGJvb3QgbW9kZSB0byBrZXJuZWwgcHJvcGVyIChNYXJrIFNhbHRl cikgW1JIRUwtMTkyN10KKy0gRGlzYWJsZSBOb3ZhIENvcmUgdW50aWwgaXQgaXMgdXNlZnVsIChK dXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9mZiBMSUJCUEZfRFlOQU1JQyBmb3IgcGVyZiBidWls ZHMgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogQWRkIFNCQVQgaW5mb3JtYXRpb24gdG8g TGludXgga2VybmVsIChWaXRhbHkgS3V6bmV0c292KQorLSByZWRoYXQ6IEFkZCBTQkFUIHRvIHRo ZSBVS0kgdW5jb25kaXRpb25hbGx5IChWaXRhbHkgS3V6bmV0c292KQorLSBFbmFibGUgUEhZIGRy aXZlcnMgcmVxdWlyZWQgZm9yIGF1dG9tb3RpdmUgYm9hcmQgKFJhZHUgUmVuZGVjKQorLSBmZWRv cmE6IG1vcmUgdXBkYXRlcyBmb3IgNi4xNyAoUGV0ZXIgUm9iaW5zb24pCistIHNwZWNmaWxlOiBj aGFuZ2UgY29uZGl0aW9uYWxzIGZvciByZWFsdGltZSBmb3IgZmVkb3JhIChDbGFyayBXaWxsaWFt cykKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgVFBNMiBITUFDIHNlc3Npb25zICjFoHTEm3DD oW4gSG9yw6HEjWVrKSBbUkhFTC04Mjc3OV0KKy0gcmVkaGF0L3NjcmlwdDogRml4IGluc3RydWN0 aW9ucyBmb3IgZGlzdC1jcm9zcy1zZXR1cCAoVGhvbWFzIEh1dGgpCistIHJlZGhhdC9jb25maWdz OiBGaXggbG9jYXRpb24gb2YgdGhlIFMzOTBfTU9EVUxFU19TQU5JVFlfVEVTVCBzd2l0Y2ggKFRo b21hcyBIdXRoKQorLSByZWRoYXQvY29uZmlnczogRml4IGxvY2F0aW9uIG9mIHRoZSBDT05GSUdf UzM5MF9LUFJPQkVTX1NBTklUWV9URVNUIHN3aXRjaCAoVGhvbWFzIEh1dGgpCistIHJlZGhhdC9j b25maWdzOiBSZW1vdmUgc3VwZXJmbHVvdXMgZ2VuZXJpYyBDT05GSUdfVFVORV9aMTYgc3dpdGNo IChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0L2NvbmZpZ3M6IENvbnNvbGlkYXRlIHRoZSBDT05GSUdf VFVORV9aMTcgc3dpdGNoIChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0L2NvbmZpZ3M6IENvbnNvbGlk YXRlIHRoZSBDT05GSUdfUkFORE9NSVpFX0lERU5USVRZX0JBU0Ugc3dpdGNoIChUaG9tYXMgSHV0 aCkKKy0gRml4IHVwIHNvbWUgbmV0d29ya2luZyBjb25maWdzIHRvIG1ha2UgZG9ja2VyIHdvcmsg YWdhaW4gKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlbmFtZSBDT05GSUdfUEFHRV9CTE9DS19PUkRF UiB0byBDT05GSUdfUEFHRV9CTE9DS19NQVhfT1JERVIgKEp1c3RpbiBNLiBGb3JiZXMpCistIGtl cm5lbC5zcGVjOiBhZGQgJy1lJyBvcHRpb24gdG8gJSVwcmV1biBmb3Iga2VybmVsLWNvcmUgYW5k IGtlcm5lbC11a2ktdmlydCAoWHVlbWluIExpKQorLSBSZW1vdmUgQ09ORklHX1RFU1RfTUlTQ19N SU5PUiBhcyBkZXBzIGFyZSBubyBsb25nZXIgbWV0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQg dG8gcGVuZGluZyB0byBmaXggcHJlY2VuZGVuY2UgYW5kIGF2b2lkIG1pc21hdGNoIChKdXN0aW4g TS4gRm9yYmVzKQorLSBDT05GSUdfUEFHRV9CTE9DS19PUkRFUiBpcyBub3cgQ09ORklHX1BBR0Vf QkxPQ0tfTUFYX09SREVSIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWM6 IGZpeCBsZWZ0b3ZlciB0eXBvIGluIFByb3ZpZGVzIGxpbmUgKEphbiBTdGFuY2VrKQorLSBmZWRv cmE6IFVwZGF0ZXMgZm9yIDYuMTcgbWVyZ2UgKFBldGVyIFJvYmluc29uKQorLSBGaXggYSBtaXNt YXRjaCwgbmVlZHMgZnVydGhlciBpbnZlc3RpZ2F0aW9uIChKdXN0aW4gTS4gRm9yYmVzKQorLSBU dXJuIG9mZiBURVNUX01JU0NfTUlOT1IgYXMgaXRzIGRlcHMgYXJlIG5vIGxvbmdlciBtZXQgKEp1 c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBEaXNhYmxlIENSWVBUT19LUkI1IGZv ciB6ZmNwZHVtcCAoVmxhZGlzIERyb25vdikKKy0gVHJpbSBjaGFuZ2Vsb2cgYWZ0ZXIgcmViYXNl IChKdXN0aW4gTS4gRm9yYmVzKQorLSBGbGlwIFRFR1JBMTI0X0NQVUZSRVEgdG8gbSBmb3IgY29u ZmlnIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBSSEVMX1JFTEVBU0UgZm9y IHRoZSA2LjE3IGN5Y2xlIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWM6 IGZpeCB1bmFtZV92YXJpYW50IGNhbGwgc2l0ZXMgKEphbiBTdGFuY2VrKSBbUkhFTC0xMDQyMzFd CistIHJlZGhhdC9rZXJuZWwuc3BlYzogZml4IHVuYW1lX3N1ZmZpeCBjYWxsIHNpdGVzIChKYW4g U3RhbmNlaykgW1JIRUwtMTA0MjMxXQorLSByZWRoYXQvY29uZmlnczogQWRkIGV2YWx1YXRlX2Nv bmZpZ3MucHkgYW5kIGRvY3VtZW50YXRpb24gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBS ZW1vdmUgb2xkIGV2YWx1YXRlX2NvbmZpZ3MgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3Nw ZWM6IHBhY2thZ2UgZnVsbCBicGZ0b29sIGluIHNlbGZ0ZXN0cyAoR3JlZ29yeSBCZWxsKQorLSBz ZWxmdGVzdHMvYnBmOiBSZW1vdmUga3N5bXNfd2Vha19sc2tlbCB0ZXN0IChBcnRlbSBTYXZrb3Yp CistIHJlZGhhdC9zcGVjOiBBZGQgbGlieG1sMi1kZXZlbCBkZXBlbmRlbmN5IGZvciBzZWxmdGVz dHMgYnVpbGQgKFZpa3RvciBNYWxpaykKKy0gcmVkaGF0L3NwZWM6IEJ5cGFzcyBjaGVjay1ycGF0 aHMgZm9yIGtzZWxmdGVzdHMvYnBmL3VyYW5kb21fcmVhZCAoVmlrdG9yIE1hbGlrKQorLSByZWRo YXQvc3BlYzogRG8gbm90IHVzZSBzb3VyY2UgZm9ydGlmaWNhdGlvbiBmb3IgQysrIHNlbGZ0ZXN0 IGJpbmFyaWVzIChWaWt0b3IgTWFsaWspCistIHJlZGhhdC9zcGVjOiBEbyBub3QgdXNlIHNvdXJj ZSBmb3J0aWZpY2F0aW9uIGZvciBzZWxmdGVzdHMgKFZpa3RvciBNYWxpaykKKy0gcmVkaGF0L3Nw ZWM6IEZpeCBCUEYgc2VsZnRlc3RzIGJ1aWxkIHdpdGggUElFIChWaWt0b3IgTWFsaWspCistIHJl ZGhhdC9zcGVjOiBBZGQgRVhUUkFfQ1hYRkxBR1MgdG8gYnBmIHNhbXBsZXMgYW5kIHNlbGZ0ZXN0 cyBtYWtlIChBcnRlbSBTYXZrb3YpCistIGZlZG9yYTogbWlub3IgY2xlYW51cHMgKFBldGVyIFJv Ymluc29uKQorLSBmZWRvcmE6IGFhcmNoNjQ6IGVuYWJsZSBhIGNvdXBsZSBvZiBicmNtc3RiIHJl c2V0IGRyaXZlcnMgKFBldGVyIFJvYmluc29uKQorLSByaGVsL2FhcmNoNjQ6IGVuYWJsZSBDT05G SUdfVENHX0FSTV9DUkJfRkZBIGFzIGEgbW9kdWxlIChNYXJjaW4gSnVzemtpZXdpY3opCistIHJl ZGhhdC9jb25maWdzOiBNb3ZlIENPTkZJR19NSVRJR0FUSU9OX1RTQSB1bmRlciBjb21tb24vZ2Vu ZXJpYy94ODYgKFdhaW1hbiBMb25nKQorLSBTZXQgQ09ORklHX1RFU1RfVk1BTExPQyB0byBvZmYg Zm9yIHMzOTAgemZjcGR1bXAgKEp1c3RpbiBNLiBGb3JiZXMpCistIFJldmVydCAicmVkaGF0L2Nv bmZpZ3M6IGF1dG9tb3RpdmU6IFR1cm4gb2ZmIEFDUEkgUHJvY2Vzc29yIHBhY2thZ2UgZm9yIGFh cmNoNjQiIChFbnJpYyBCYWxsZXRibyBpIFNlcnJhKQorLSByZWRoYXQvY29uZmlnczogYXV0b21v dGl2ZTogRGlzYWJsZSBDT05GSUdfTlVNQSBjb25maWcgKERvcmluZGEgQmFzc2V5KQorLSBDb25z b2xpZGF0ZSBjb25maWdzIHRvIGNvbW1vbiBmb3IgNi4xNiAoSnVzdGluIE0uIEZvcmJlcykKKy0g YXJtNjQ6IGVuYWJsZSBTTkRfSERBX0FDUEkgYXMgYSBtb2R1bGUgKE1hcmNpbiBKdXN6a2lld2lj eikKKy0ga2VybmVsLnNwZWM6IGFsd2F5cyBwcm92aWRlIGtlcm5lbC1kZXZlbC11bmFtZS1yIChT Y290dCBXZWF2ZXIpCistIGtlcm5lbC5zcGVjOiBhbHdheXMgcHJvdmlkZSBrZXJuZWwgKFNjb3R0 IFdlYXZlcikKKy0ga2VybmVsLnNwZWM6IGR5bmFtaWNhbGx5IHNldCBwcm92aWRlcy9yZXF1aXJl cyBuYW1lIChTY290dCBXZWF2ZXIpCistIGtlcm5lbC5zcGVjOiB1c2UgJSV7bmFtZX0gaW4gcGFy dG5lci9pbnRlcm5hbCBtb2R1bGVzIChTY290dCBXZWF2ZXIpCistIGtlcm5lbC5zcGVjOiBpbnRy b2R1Y2Ugd2l0aF9hdXRvbW90aXZlX2J1aWxkIChTY290dCBXZWF2ZXIpCistIGtlcm5lbC5zcGVj OiBmaXgga2VybmVsLWF1dG9tb3RpdmUgcGFja2FnaW5nIChTY290dCBXZWF2ZXIpCistIGtlcm5l bC5zcGVjOiBhZGQgYSBmZXcgbWFjcm8gb3B0aW9uIGNvbW1lbnRzIChTY290dCBXZWF2ZXIpCist IGtlcm5lbC5zcGVjOiBhZGQgY29uZGl0aW9uYWwgdG8gaW5jbHVkZSByaGVsIHRydXN0ZWQgY2Vy dGlmaWNhdGVzIChFcmljIENoYW51ZGV0KQorLSBrZXJuZWwuc3BlYzogQWx3YXlzIEJ1aWxkUmVx dWlyZSBvcGVuc3NsLWRldmVsIChFcmljIENoYW51ZGV0KQorLSBrZXJuZWwuc3BlYzogYXV0b21v dGl2ZTogZGlzYWJsZSBrZXJuZWwgc2lnbmF0dXJlIGJ5IGRlZmF1bHQgKEVyaWMgQ2hhbnVkZXQp CistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBlbmFibGUgZXh0cmEgc3lzdGVtIGNlcnQg KEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIG1v ZHVsZSBzaWduYXR1cmUgd2l0aCBtb2R1bGVzX2luc3RhbGwgKEVyaWMgQ2hhbnVkZXQpCistIGtl cm5lbC5zcGVjOiBob25vciBwYWNrYWdpbmcgZmxhZ3MgKFNjb3R0IFdlYXZlcikKKy0gRml4IEZJ UFMgbW9kZSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIFRTQSBNaXRp Z2F0aW9uIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBF bmFibGUgQ09ORklHX0FNRF9IU01QX0FDUEkgYW5kIENPTkZJR19BTURfSFNNUF9QTEFUIG9uIFJI RUwgKERhdmlkIEFyY2FyaSkKKy0gcmVkaGF0L2NvbmZpZ3M6IENPTkZJR19XV0FOIGVub3VnaCBh cyBhIG1vZHVsZSAoSm9zZSBJZ25hY2lvIFRvcm5vcyBNYXJ0aW5leikKKy0gcmVkaGF0L2NvbmZp Z3M6IEVuYWJsZSBDT05GSUdfTkVUX1NDSF9CUEYgb24gUkhFTCAoVmlrdG9yIE1hbGlrKQorLSBj b25maWc6IG5ldyBjb25maWcgaW4gZHJpdmVycy9waHkgKEl6YWJlbGEgQmFrb2xsYXJpKQorLSBs aXZlcGF0Y2g6IG5vIG5lZWQgdG8gYnVpbGQga3NlbGZ0ZXN0cyB3aXRoIGtlcm5lbCAoUmFkb21p ciBWcmJvdnNreSkKKy0gcmVkaGF0OiBSZXN0b3JlIHRoZSBzdGF0dXMgcXVvIHdydCBtZW1vcnkg b25saW5pbmcgKFZpdGFseSBLdXpuZXRzb3YpIFsyMzc1MDQ5XQorLSByZWRoYXQvc3BlYzogRGlz YWJsZSBnZGIgaW5kZXggZm9yIHJpc2N2IGNyb3NzLWNvbXBpbGUgKEplbm5pZmVyIEJlcnJpbmdl cikKKy0gZ2l0bGFiLWNpOiBFbmFibGUgQ0kgZm9yIHJpc2N2NjQgb24gY2VudG9zL2VsbiAoSmVu bmlmZXIgQmVycmluZ2VyKQorLSByZWRoYXQ6IEVuYWJsZSBSSVNDLVYgYXJjaCBmb3IgY2VudG9z L2VsbiAoSmVubmlmZXIgQmVycmluZ2VyKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6 IGFkZCBkcml2ZXJzL25ldCBhbmQgZHJpdmVycy9uZXQvaHcgc2VsZnRlc3QgKEhhbmdiaW4gTGl1 KQorLSB1a2k6IGVuYWJsZSBGSVBTIG1vZGUgKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9j b25maWdzOiBNb3ZlIENPTkZJR19NSVRJR0FUSU9OX0lUUyB0byBjb21tb24vZ2VuZXJpYy94ODYg KFdhaW1hbiBMb25nKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIGZ3Y3RsIGZvciBSSEVMIChN aWNoYWwgU2NobWlkdCkgW1JIRUwtOTY5ODddCistIEZlZG9yYSBjb25maWdzIGZvciA2LjE2IChK dXN0aW4gTS4gRm9yYmVzKQorLSBhYXJjaDY0OiBTd2l0Y2ggVElfU0NJX0NMSyBhbmQgVElfU0NJ X1BNX0RPTUFJTlMgc3ltYm9scyB0byBidWlsdC1pbiAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhh dC9jb25maWdzOiBlbmFibGUgQ09ORklHX1RDR19TVlNNIChTdGVmYW5vIEdhcnphcmVsbGEpCist IHJlZGhhdDogZW5hYmxlIENPTkZJR19DUkFTSF9ETV9DUllQVCBhbmQgQ09ORklHX0tFWEVDX0hB TkRPVkVSIGZvciBhbGwgKENvaWJ5IFh1KQorLSBTaW1wbGlmeSBpbmNsdWRlIE1ha2VmaWxlLnJo ZWx2ZXIgKERvbiBaaWNrdXMpCistIHJlZGhhdC9jb25maWdzL2NvbW1vbi9nZW5lcmljOiBlbmFi bGUgdmdlbSBtb2R1bGUgdmlhIENPTkZJR19EUk1fVkdFTSAoQWxleGFuZGVyIEthbmF2aW4pCist IHJlZGhhdC9jb25maWdzOiBlbmFibGUgSVdMTUxEIGZvciByaGVsIChKb3NlIElnbmFjaW8gVG9y bm9zIE1hcnRpbmV6KQorLSBrZXJuZWwuc3BlYzogZmVkb3JhIGF1dG9tb3RpdmUgYnVpbGQgaXMg bm90IHN1cHBvcnRlZCAoU2NvdHQgV2VhdmVyKQorLSBnaXRpZ25vcmU6IGtlcm5lbC1hdXRvbW90 aXZlIGdlbmVyYXRlZCBmaWxlcyAoU2NvdHQgV2VhdmVyKQorLSBnaXRsYWItY2k6IHVzZSBBVVRP TU9USVZFX0JVSUxEIHdpdGggZGlzdC1zcnBtIChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9zZWxm LXRlc3Q6IHVwZGF0ZSBmb3IgbmV3IGF1dG9tb3RpdmUgdmFyaWFibGVzIChTY290dCBXZWF2ZXIp CistIHJlZGhhdC9NYWtlZmlsZTogaW50cm9kdWNlIEFVVE9NT1RJVkVfQlVJTEQgKFNjb3R0IFdl YXZlcikKKy0ga2VybmVsLnNwZWM6IHVwZGF0ZXMgZm9yIGF1dG9tb3RpdmUtb25seSBidWlsZCAo U2NvdHQgV2VhdmVyKQorLSBmZWRvcmE6IFVwZGF0ZXMgZm9yIHRoZSA2LjE2IG1lcmdlIHdpbmRv dyAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9rZXJuZWwuc3BlYzogZHJvcCBtb2R1bGVzLWV4 dHJhLW1hdGNoZWQgZm9yIG5vYXJjaCAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBm ZWRvcmE6IHNldCBzb21lIHFjb20gY2xrLCBpY2MsIGFuZCBwaW5jdHJsIGRyaXZlcnMgdG8gYnVp bHQgaW4gKEJyaWFuIE1hc25leSkKKy0gZmVkb3JhOiBkaXNhYmxlIFNORF9PU1NFTVVMIChQZXRl ciBSb2JpbnNvbikKKy0gZmVkb3JhOiBkaXNhYmxlIE9TUyBzb3VuZCBmb3IgcmVhbCBIVyAoUGV0 ZXIgUm9iaW5zb24pCistIGdpdGxhYi1jaTogZGlzYWJsZSBtZXJnZS1ydC1hdXRvbW90aXZlIChT Y290dCBXZWF2ZXIpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBlbmFibGUgajc4NHM0 ZXZtIERTUCByZW1vdGVwcm9jIGNvbmZpZ3MgKEphcmVkIEthbmdhcykgW1JIRUwtOTU0MzZdCist IHJlZGhhdC9jb25maWdzOiBhZGQgTEVEIGtlcm5lbCBjb25maWdzIChSdXBpbmRlcmppdCBTaW5n aCkKKy0gcmVkaGF0OiBlbmFibGUgdGVzdF9rbW9kLCB0ZXN0X21vZHVsZSBhbmQgaW5zdGFsbCBr bW9kIHNlbGZ0ZXN0cyAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHBhY2thZ2UgdGhlIG5ld2x5 IGFkZGVkIGNwdXBvd2VyLnNlcnZpY2UgKFRob3JzdGVuIExlZW1odWlzKQorLSBwcm9jZXNzX2Nv bmZpZ3M6IGFsd2F5cyBwcmludCBlcnJvcnMgKFRob3JzdGVuIExlZW1odWlzKQorLSByZWRoYXQv Y29uZmlnczogZGlzYWJsZSBSWi9WMk4gaW4gYXV0b21vdGl2ZSAoRXJpYyBDaGFudWRldCkKKy0g cmVkaGF0L2NvbmZpZ3M6IE1vdmUgUlovRzNFIGNvbmZpZyB0byBhdXRvbW90aXZlIChFcmljIENo YW51ZGV0KQorLSByZWRoYXQ6IGFkZCBtb3JlIG5hbWVzcGFjZSBzZWxmdGVzdHMgdG8ga2VybmVs LW1vZHVsZXMtaW50ZXJuYWwgcGFja2FnZSAoSm9lbCBTYXZpdHopIFtSSEVMLTk0NTAzXQorLSBy ZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19QQ0lFX1RQSCAoSXZhbiBWZWNlcmEpCistIHNw ZWM6IGZpeCBzcGVjIHdhcm5pbmcgZm9yIC91c3IvaW5jbHVkZS95bmwgKEphbiBTdGFuY2VrKQor LSByZWRoYXQvY29uZmlnczogTW92ZSBDT05GSUdfUFBDX0ZUUkFDRV9PVVRfT0ZfTElORV9OVU1f UkVTRVJWRSB0byBwb3dlcnBjIChWaWt0b3IgTWFsaWspCistIEZpeCB1cCBwb3dlcnBjIG1pc21h dGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggYW5vdGhlciBtaXNtYXRjaCBmb3IgNi4xNiAo SnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVwIGEgbWlzbWF0Y2ggZm9yIEZlZG9yYSBhYXJjaDY0 IChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgbWlzbWF0Y2hlcyBmb3IgUkhFTCBzMzkwIHpm cGNkdW1wIChKdXN0aW4gTS4gRm9yYmVzKQorLSBNb3JlIG1pc21hdGNoIGZpeGVzIGZvciA2LjE2 IChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIENST1NfRUNfUFJPVE8gdG8gbSBmb3IgRmVkb3Jh IHRvIGF2b2lkIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBjaGFuZ2Vsb2cg Zm9yIDYuMTYgY3ljbGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZpeCB1cCBDUllQVE9fU0hBMjU2 IGNvbmZpZ3MgZm9yIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBSSEVMX1JF TEVBU0UgZm9yIHRoZSA2LjE2IGN5Y2xlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRvcmE6IGFk ZCAnZmVkb3JhJyBTQkFUIHN1ZmZpeCBmb3IgVUtJIGFkZG9ucyAoTGkgVGlhbikKKy0gcmVkaGF0 OiBhZGQgZG93bnN0cmVhbSBTQkFUIGZvciBVS0kgYWRkb25zIChFbWFudWVsZSBHaXVzZXBwZSBF c3Bvc2l0bykKKy0gdWtpX2FkZG9uczogcHJvdmlkZSBjdXN0b20gU0JBVCBhcyBpbnB1dCBwYXJh bWV0ZXIgKEVtYW51ZWxlIEdpdXNlcHBlIEVzcG9zaXRvKQorLSB1a2lfYWRkb25zOiByZW1vdmUg Y29tcGxldGVseSBzYmF0L3NiYXQuY29uZiAoRW1hbnVlbGUgR2l1c2VwcGUgRXNwb3NpdG8pCist IENvbnNvbGlkYXRlIGNvbmZpZ3MgdG8gY29tbW9uIGZvciA2LjE1IChKdXN0aW4gTS4gRm9yYmVz KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIE1ISV9CVVNfRVAgKEVyaWMg Q2hhbnVkZXQpCistIEZpeCBQSFlTSUNBTF9BTElHTiBmb3IgeDg2IEZlZG9yYSAoSnVzdGluIE0u IEZvcmJlcykKKy0gU3dpdGNoIFpTV0FQX1pQT09MX0RFRkFVTFQgdG8gWlNNQUxMT0MgYXMgWkJV RCBoYXMgYmVlbiByZW1vdmVkIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGNvbmZpZ3M6 IHJoZWw6IEVuYWJsZSBDWDIzMVhYIGRyaXZlcnMgKEthdGUgSHN1YW4pCistIGNvbmZpZ3M6IGFk ZCByZWRoYXQvY29uZmlncy9jb21tb24vZ2VuZXJpYy9DT05GSUdfT0JKVE9PTF9XRVJST1IgKFJ5 YW4gU3VsbGl2YW4pIFtSSEVMLTg1MzAxXQorLSByZWRoYXQ6IG1ha2UgRU5BQkxFX1dFUlJPUiBh bHNvIGVuYWJsZSBPQkpUT09MX1dFUlJPUiAoUnlhbiBTdWxsaXZhbikgW1JIRUwtODUzMDFdCist IHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1g4Nl9QT1NURURfTVNJIChKZXJyeSBTbml0 c2VsYWFyKQorLSByZWRoYXQvY29uZmlnczogcmVtb3ZlIENSQzE2IGNvbmZpZyBmaWxlcyAoU2Nv dHQgV2VhdmVyKQorLSBSZXZlcnQgQ09ORklHX0dFTktTWU1TIGluIHBlbmRpbmcgZm9yIHg4NiAo SnVzdGluIE0uIEZvcmJlcykKKy0gRmxpcCBHRU5LU1lNUyBmb3IgUkhFTCAoSnVzdGluIE0uIEZv cmJlcykKKy0gTW92ZSBNSVRJR0FUSU9OX0lUUyB0byB0aGUgeDg2IGRpcmVjdG9yeSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gU2V0IE1JVElHQVRJT05fSVRTIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBG b3JiZXMpCistIEZlZG9yYTogYXJtOiBVcGRhdGVzIGZvciBRQ29tIGRldmljZXMgKFNvdXJhZGVl cCBDaG93ZGh1cnkpCistIHJlZGhhdC9jb25maWdzOiBFeHBsaWNpdGx5IGRpc2FibGUgQ09ORklH X1ZJUlRJT19NRU0gb24gcG93ZXJwYyBpbiBSSEVMIChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0L2Nv bmZpZ3M6IENvbnNvbGlkYXRlIHRoZSBDT05GSUdfQVBfREVCVUcgY29uZmlnIHN3aXRjaCAoVGhv bWFzIEh1dGgpCistIFNldCBGZWRvcmEgY29uZmlncyBmb3IgNi4xNSAoSnVzdGluIE0uIEZvcmJl cykKKy0gU2hvcnRlbiB0aGUgdW5hbWUgZm9yIGdpdCBzbmFwc2hvdHMgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIG52bWU6IGV4cGxpY2l0bHkgZW5hYmxlIHRoZSBudm1lIGtleXJpbmcgKE1hdXJpemlv IExvbWJhcmRpKQorLSBFbmFibGUgdGhlIGdzX3VzYiBDQU4gYnVzIGRyaXZlciBpbiBSSEVMIChS YWR1IFJlbmRlYykKKy0gU3RvcCBkaXNhYmxpbmcgc29tZSBtb2R1bGVzIG5lZWRlZCB0byBydW4g b24gQXp1cmUgKFBpZXJyZS1ZdmVzIENoaWJvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBB Q1BJX0RFQlVHIG9uIG5vbi1kZWJ1ZyBrZXJuZWxzIChNYXJrIExhbmdzZG9yZikKKy0gc3BlY2Zp bGU6ICBhZGQgd2l0aF90b29sc29ubHkgdmFyaWFibGUgdG8gYnVpbGQgb25seSB0b29scyBwYWNr YWdlcyAoQ2xhcmsgV2lsbGlhbXMpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1RZ UEVDX1RCVF9BTFRNT0RFIGluIFJIRUwgKERlc25lcyBOdW5lcykgW1JIRUwtNzg5MzFdCistIFR1 cm4gb24gQUNQSV9ERUJVRyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6 IGZpeCBrZXJuZWwtcnQta3ZtIHBhY2thZ2UgcmVtb3ZhbCBmb3IgRmVkb3JhIChUaG9yc3RlbiBM ZWVtaHVpcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGFhcmNoNjQ6IEVuYWJsZSBBcHBsZSB0b3VjaGJh ciBkaXNwbGF5IGRyaXZlciBmb3IgRmVkb3JhIChOZWFsIEdvbXBhKQorLSByZWRoYXQ6IHJlbW92 ZSBrZXJuZWwtcnQta3ZtIHBhY2thZ2UgKENsYXJrIFdpbGxpYW1zKQorLSByZWRoYXQ6IGludHJv ZHVjZSBtb2R1bGVzLWV4dHJhLW1hdGNoZWQgbWV0YSBwYWNrYWdlIChKYW4gU3RhbmNlaykKKy0g Rml4IHVwIHNvbWUgTmV0ZmlsdGVyIGNvbmZpZ3MgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJl cykKKy0gVHVybiBORl9DVF9ORVRMSU5LX1RJTUVPVVQgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZv cmJlcykKKy0gVHVybiBvbiBORl9DT05OVFJBQ0tfVElNRU9VVCBmb3IgRmVkb3JhIChKdXN0aW4g TS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogQWRqdXN0IENPTkZJR19UVU5FIGZvciBzMzkw eCAoTWV0ZSBEdXJsdSkKKy0gcmVkaGF0L3NwZWM6IGZpeCBzZWxmdGVzdHMgZGVwZW5kZW5jaWVz IChHcmVnb3J5IEJlbGwpIFtSSEVMLTg4MjI4XQorLSByZWRoYXQ6IGFkZCBuYW1lc3BhY2Ugc2Vs ZnRlc3RzIHRvIGtlcm5lbC1tb2R1bGVzLWludGVybmFsIHBhY2thZ2UgKEpvZWwgU2F2aXR6KSBb UkhFTC04ODYzNV0KKy0gVHVybiBvZmYgQ09ORklHX1BDSV9SRUFMTE9DX0VOQUJMRV9BVVRPIGZv ciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIGdpdGxhYi1jaTogZW5hYmxlIHBpcGVsaW5l cyBmb3IgcnQtNjRrIChDbGFyayBXaWxsaWFtcykKKy0gcnQtNjRrOiAgRW5hYmxlIGJ1aWxkaW5n IDY0ayBwYWdlLXNpemUgUlQga2VybmVsIChDbGFyayBXaWxsaWFtcykKKy0gcmVkaGF0OiBkcm9w IFkgaXNzdWVzIGZyb20gY2hhbmdlbG9nIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6 IFVwZGF0ZSB0aGUgQ09ORklHX0tFUk5FTF9JTUFHRV9CQVNFIGtlcm5lbCBjb25maWcgb3B0aW9u IChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0L2NvbmZpZ3M6IFJlbW92ZSB0aGUgb2Jzb2xldGUgQ09O RklHX1pDUllQVF9ERUJVRyBzd2l0Y2hlcyAoVGhvbWFzIEh1dGgpCistIHJlZGhhdC9jb25maWdz OiBDb25zb2xpZGF0ZSB0aGUgQ09ORklHX0FQIHN3aXRjaCAoVGhvbWFzIEh1dGgpCistIGZlZG9y YTogdXBkYXRlcyBmb3IgNi4xNSAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9jb25maWdzOiBE aXNhYmxlIENPTkZJR19DT01QQVQgb3B0aW9uIG9uIHMzOTAgKE1ldGUgRHVybHUpIFtSSEVMLTI0 MDQ3XQorLSB1a2k6IEFkZCB3ZWFrIGRlcGVuZGVuY3kgb24gJ3VraS1kaXJlY3QnIChWaXRhbHkg S3V6bmV0c292KQorLSByZWRoYXQva2VybmVsLnNwZWM6IGZpeCBkdXBsaWNhdGUgcGFja2FnaW5n IG9mIHlubCBoZWFkZXJzIChKYW4gU3RhbmNlaykKKy0gRW5hYmxlIEZ1bmN0aW9uRlMgb24gYWFy Y2g2NCArIHg4NiAoU2FtIERheSkKKy0gVHVybiBvbiBVU0IgR2FkZ2V0IGZvciBGZWRvcmEgeDg2 IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGVuYWJsZSBkcm0gcGFuaWMgc2NyZWVuIHdp dGggYSBRUiBjb2RlIChTY290dCBXZWF2ZXIpCistIHJlZGhhdDogZW5hYmxlIFJ1c3QgY29kZSBp biBFTE4gKFNjb3R0IFdlYXZlcikKKy0gcmVkaGF0OiBzdHJpcCBsZWFkaW5nICcoJyBpbiBkaXN0 LWdldC1idWlsZHJlcXMgKEphbiBTdGFuY2VrKQorLSBGaXggdXAgQ09ORklHX0NSQ19JVFVfVCBt aXNtYXRjaCAoU2NvdHQgV2VhdmVyKQorLSBGaXggdXAgQ09ORklHX0NSQzE2IG1pc21hdGNoIChT Y290dCBXZWF2ZXIpCistIHJlZGhhdDogcmVtb3ZlIGtlcm5lbC1pcGFjbG9uZXMtaW50ZXJuYWwg cGFja2FnZSAoSm9lIExhd3JlbmNlKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IGFk ZCBuZXQgcGFja2V0ZHJpbGwgc2VsZnRlc3RzIChIYW5nYmluIExpdSkKKy0gcmVkaGF0L2tlcm5l bC5zcGVjLnRlbXBsYXRlOiBCdWlsZCBydGxhIHdpdGggQlBGIHNhbXBsZSBjb2xsZWN0aW9uIChU b21hcyBHbG96YXIpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBFbmFibGUgQ09ORklH X0JPT1RQQVJBTV9IVU5HX1RBU0tfUEFOSUMgY29uZmlnIChEb3JpbmRhIEJhc3NleSkKKy0gc2Ft cGxlcy9icGY6IGZpeCBidWlsZCAoR3JlZ29yeSBCZWxsKQorLSByZWRoYXQ6IGNyZWF0ZSAnc3lz dGVtZC12b2xhdGlsZS1vdmVybGF5JyBhZGRvbiBmb3IgVUtJIChFbWFudWVsZSBHaXVzZXBwZSBF c3Bvc2l0bykKKy0gZmVkb3JhOiBhcm02NDogbW92ZSBzb21lIFRJIGRyaXZlcnMgdG8gbW9kdWxh ciAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogbWlub3IgY2xlYW51cHMgZm9yIDYuMTQgKFBl dGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19JMkNfTVVYX1BD QTk1NHggb24geDg2IChNaWNoYWwgU2NobWlkdCkKKy0gcmVkaGF0OiBidW1wIFJIRUxfTUFKT1Ig KEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19BTURfM0RfVkNB Q0hFIGZvciB4ODYgb24gUkhFTCAoRGF2aWQgQXJjYXJpKQorLSBTd2l0Y2ggWlNXQVBfWlBPT0xf REVGQVVMVCB0byBaU01BTExPQyBhcyBaQlVEIGhhcyBiZWVuIHJlbW92ZWQgKEp1c3RpbiBNLiBG b3JiZXMpCistIHJlZGhhdC9rZXJuZWwuc3BlYzogbGlzdCBweXRob24zLXdoZWVsIGV4cGxpY2l0 bHkgZm9yIEZlZG9yYTw0MiAoSmFuIFN0YW5jZWspCistIGhhbmRsZSBtYW4tcGFnZSBmb3IgcnYt bW9uLXNjaGVkIGluIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZSAoVGhvcnN0ZW4gTGVlbWh1 aXMpCistIHJlZGhhdDogZmluZC1kZWJ1Z2luZm8gd29ya2Fyb3VuZCBpcyBubyBsb25nZXIgbmVl ZGVkIG9uIEY0MiAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9rZXJuZWwuc3BlYzogdXNlIHRhcmdl dCB2ZXJzaW9ucyBvZiB0b29scyBmb3IgZGVidWdlZGl0IGFuZCBnZGItYWRkLWluZGV4IChKYW4g U3RhbmNlaykKKy0gcmVkaGF0OiBtYWtlIEVOQUJMRV9XRVJST1IgZW5hYmxlIGFsc28gS1ZNX1dF UlJPUiAoSmFuIFN0YW5jZWspCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBjcHVwb3dlcjogYWRq dXN0IGxpYiB2ZXJzaW9uaW5nIChUaG9yc3RlbiBMZWVtaHVpcykKKy0gcmVkaGF0L2NvbmZpZ3M6 IGF1dG9tb3RpdmU6IGJ1aWx0aW4gdmlydGlvLW1taW8gKEVyaWMgQ2hhbnVkZXQpCistIEZpeCB1 cCBtaXNtYXRjaGVzIGluIHRoZSA2LjE1IG1lcmdlIHdpbmRvdyAoU2NvdHQgV2VhdmVyKQorLSBS ZXNldCBsb2cgZm9yIDYuMTUgY3ljbGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIFJlc2V0IFJIRUxf UkVMRUFTRSBmb3IgNi4xNSBjeWNsZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gYXJtNjQ6IGNsZWFu dXAgYW5kIGRlLWR1cGUgZXJyYXR1bSAoUGV0ZXIgUm9iaW5zb24pCistIGFybTY0OiBjbGVhbnVw IGFuZCBkZS1kdXBlIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQorLSBjbGVhbnVwOiB4ODY6IGNs ZWFudXAgc29tZSB4ODZfMzIgbGVmdG92ZXJzIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBjbGVh bnVwIENBTl9ST0NLQ0hJUF9DQU5GRCAoUGV0ZXIgUm9iaW5zb24pCistIGFhcmNoNjQ6IE9wdGlv bnMgcmVxdWlyZWQgZm9yIFVFRkkgSFRUUCBib290IG9uIFN5c3RlbVJlYWR5LURUIChQZXRlciBS b2JpbnNvbikKKy0gY29tbW9uOiBNb3ZlIFpPTkVfREVWSUNFIHRvIGdlbmVyaWMgKFBldGVyIFJv Ymluc29uKQorLSBjb21tb246IENsZWFudXAgQlRUIChQZXRlciBSb2JpbnNvbikKKy0gY2xlYW51 cDogbW92ZSBERVZfREFYX1BNRU0gdG8gY29tbW9uL2dlbmVyaWMgKFBldGVyIFJvYmluc29uKQor LSBnZW5lcmljOiBjbGVhbnVwIHRoZSBOVkRJTU0gb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24pCist IGNsZWFudXA6IG1vdmUgT0ZfUE1FTSB0byBjb21tb24vZ2VuZXJpYyAoUGV0ZXIgUm9iaW5zb24p CistIGNsZWFudXA6IFJlbW92ZSBERVZfREFYX1BNRU1fQ09NUEFUIG9wdGlvbiAoUGV0ZXIgUm9i aW5zb24pCistIENvbnNvbGlkYXRlIGNvbmZpZ3MgaW50byBjb21tb24gZm9yIDYuMTQgKEp1c3Rp biBNLiBGb3JiZXMpCistIFR1cm4gVklSVElPX0JMSyBhbmQgVklSVElPX0NPTlNPTEUgaW5saW5l IGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogY29uZmlnczogZmVkb3Jh OiBlbmFibGUgQ09ORklHX0kyQ19ISURfT0Y9bSBvbiB4ODYgKEhhbnMgZGUgR29lZGUpCistIHJl ZGhhdDogbW92ZSBkaXN0LXJlbGFzZS1jaGVjayBiZWhpbmQgbmV3IHZhcmlhYmxlIChKYW4gU3Rh bmNlaykKKy0gU2V0IGxhc3QgbWludXRlIGNvbmZpZyBpdGVtIGZvciA2LjE0IGZvciBGZWRvcmEg KEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxl IENPTkZJR19VU0VSRkFVTFRGRCBjb25maWcgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29u ZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBWTEFOXzgwMjFRX0dWUlAgY29uZmlnIChEb3JpbmRh IEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgRENCIGFuZCBN UExTIGNvbmZpZ3MgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2 ZTogRGlzYWJsZSBJRUVFIDgwMi4xNS40IGNvbmZpZyAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhh dC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIHZhcmlvdXMgbmV0d29yayBjbGFzc2lmaWNh dGlvbiBmZWF0dXJlcyAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90 aXZlOiBEaXNhYmxlIHRoZSBTTUJGUyBmaWxlIHN5c3RlbSAoRG9yaW5kYSBCYXNzZXkpCistIHJl ZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIE15cmljb20gbmV0d29yayBhZGFwdGVy cyAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxl IFVTQjQgRXRoZXJuZXQgY29uZmlnIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IGF1dG9tb3RpdmU6IERpc2FibGUgdGhlIE1lbGxhbm94IFN3aXRjaFggY29yZSBkcml2ZXIgKERv cmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBuZXR3 b3JrIHN0b3JhZ2UgcmVsYXRlZCBwcm90b2NvbHMgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQv Y29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBsaWdodHdlaWdodCB0dW5uZWxpbmcgd2l0aCBC UEYgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJs ZSBSQURPUyBibG9jayBkZXZpY2UgY29uZmlncyAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9j b25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIHN3aXRjaGRldiBkcml2ZXIgZnJhbWV3b3JrIChE b3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgbmV0 d29yayBwYWNrZXQgZ2VuZXJhdG9yIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IGF1dG9tb3RpdmU6IERpc2FibGUgTkVUX0NMU19BQ1QgYW5kIFBTQU1QTEUgY29uZmlncyAoRG9y aW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIEJQRiBT VFJFQU1fUEFSU0VSIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3Rp dmU6IERpc2FibGUgT3BlbiB2U3dpdGNoIGFuZCBORVRfTlNIIGNvbmZpZ3MgKERvcmluZGEgQmFz c2V5KQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBJUCBWaXJ0dWFsIFNl cnZlciBjb25maWdzIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3Rp dmU6IERpc2FibGUgSVAgc2V0IHN1cHBvcnQgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29u ZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBOZXRMYWJlbCBzdWJzeXN0ZW0gc3VwcG9ydCAoRG9y aW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIFRMUyBQ cm90b2NvbCAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBE aXNhYmxlIEFkdmFuY2VkIFRDUCBDb25nZXN0aW9uIENvbnRyb2wgKERvcmluZGEgQmFzc2V5KQor LSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBYRFAgU29ja2V0IFByb3RvY29s IChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGRlbGV0ZSBDT05GSUdfVVNCX09O Qk9BUkRfSFVCIGFuZCB1c2UgQ09ORklHX1VTQl9PTkJPQVJEX0RFViBpbnN0ZWFkIChEZXNuZXMg TnVuZXMpCistIHJlZGhhdDogY2hlY2sgcmVsZWFzZSBjb21taXQgaXMgcHJlc2VudCBmb3IgZGlz dC17cmVsZWFzZS10YWcsZ2l0fSAoSmFuIFN0YW5jZWspCistIFJlLWVuYWJsZSB2eGNhbiAoQ09O RklHX0NBTl9WWENBTikgZm9yIGF1dG9tb3RpdmUgKFJhZHUgUmVuZGVjKQorLSBUdXJuIG9uIENP TkZJR19QQUNLSU5HIGZvciBSSEVMIChKdXN0aW4gTS4gRm9yYmVzKQorLSBtYWluLmM6IGZpeCBp bml0Y2FsbCBibGFja2xpc3RlZCAoVG9tYXMgSGVuemwpCistIHJlZGhhdC9jb25maWdzOiBhdXRv bW90aXZlOiBEaXNhYmxlIElQc2VjIFByb3RvY29scyBhbmQgWEZSTSAoRG9yaW5kYSBCYXNzZXkp CistIHJlZGhhdDogVXBkYXRlIENPTkZJR19TVFJJQ1RfREVWTUVNIHNldHRpbmdzIChlbmFibGUg aXQgb24gczM5MHgpIChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0OiBDb25zb2xpZGF0ZSBDT05GSUdf VklSVElPX01FTSBhbmQgZW5hYmxlIGl0IGFsc28gZm9yIHMzOTB4IChUaG9tYXMgSHV0aCkKKy0g UmVtb3ZlIG5vIGxvbmdlciBuZWNlc3NhcnkgcGVuZGluZyBlbnRyeSAoSnVzdGluIE0uIEZvcmJl cykKKy0gRmVkb3JhIGNvbmZpZ3MgZm9yIDYuMTQgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhh dC9jb25maWdzOiBEaXNhYmxlIHJlc3Qgb2YgdGhlIENPTkZJR19QS0VZXyBvcHRpb25zIG9uIHMz OTAgKE1ldGUgRHVybHUpIFtSSEVMLTc4MzQxXQorLSBGaXggdXAgc29tZSBkZWJ1ZyBtb2R1bGUg bG9hZGluZyBpc3N1ZXMgZHVlIHRvIEJURiBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0g UmV2ZXJ0ICJyZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogZGlzYWJsZSBDT05GSUdfQUlPIiAo RGF2aWRlIENhcmF0dGkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlIGRpc2FibGUgQVJD SF9URUdSQV8yNDFfU09DIChFcmljIENoYW51ZGV0KQorLSByaGVsX2ZpbGVzOiBlbnN1cmUgYWxs IHFkaXNjcyBhcmUgaW4gbW9kdWxlcy1jb3JlIChEYXZpZGUgQ2FyYXR0aSkgW1JIRUwtNzk4MThd CistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIE1SUC84MDIxUV9NVlJQIFBy b3RvY29sIChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdf QVJNX1NNTVVfTU1VXzUwMF9DUFJFX0VSUkFUQSAoSmVycnkgU25pdHNlbGFhcikKKy0gcmVkaGF0 L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfQVJNX1NNTVVfVjNfSU9NTVVGRCAoSmVycnkgU25pdHNl bGFhcikKKy0gcmVkaGF0OiBjb25maWdzOiByZW1vdmUgQ09ORklHX0RNQV9BUElfREVCVUdfU0cg KEthdGUgSHN1YW4pCistIGtlcm5lbC5zcGVjOiBhZGQgbWlzc2luZyB0b29scy1saWJzIG9uIHMz OTB4IChKYW4gU3RhbmNlaykKKy0gYXJjaC94ODYva2VybmVsL3NldHVwLmM6IGZpeCByaF9jaGVj a19zdXBwb3J0ZWQgKFRvbWFzIEhlbnpsKQorLSBrZXJuZWwuc3BlYzogYWRkIG1pbmltdW0gdmVy c2lvbiBvZiBzZXR1cHRvb2xzIGZvciB5bmwgKEphbiBTdGFuY2VrKQorLSBSZXZlcnQgIk1lcmdl OiByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSBQT1NJWF9NUVVFVUUgY29uZmln IChEb3JpbmRhIEJhc3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBpbiBrZXJuZWwgY29t cHJlc3Npb24vZGVjb21wcmVzc2lvbiBvZiBjb21wcmVzc2VkIG1vZHVsZXMgKEhlcnRvbiBSLiBL cnplc2luc2tpKQorLSByZWRoYXQ6IGNoYW5nZSBjb21wcmVzc2lvbiBmbGFncyBmb3IgeHogKEhl cnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogVHVybiBv ZmYgQUNQSSBQcm9jZXNzb3IgcGFja2FnZSBmb3IgYWFyY2g2NCAoRW5yaWMgQmFsbGV0Ym8gaSBT ZXJyYSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgTDJUUCBQcm90b2Nv bCAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxl IFRJUEMgUHJvdG9jb2wgKERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxl IE1lZGlhdGVrIEJsdWV0b290aCBVU0IgZHJpdmVycyAoQmFzdGllbiBOb2NlcmEpCistIHJlZGhh dC9jb25maWdzOiBEaXNhYmxlIENPTkZJR19QS0VZIGZvciB6ZmNwZHVtcCBjb25maWdzIChNZXRl IER1cmx1KSBbUkhFTC03ODM0MV0KKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGRpc2Fi bGUgVkZJT19QTEFURk9STSAoRXJpYyBDaGFudWRldCkKKy0gUmV2ZXJ0ICJNZXJnZTogcmVkaGF0 L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgU1lTSVBDIGNvbmZpZyIgKERvcmluZGEgQmFz c2V5KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19LQVNBTl9JTkxJTkUgZm9yIFJU IGRlYnVnIGtlcm5lbCAoV2FpbWFuIExvbmcpCistIHJlZGhhdC9jb25maWdzOiBNb3ZlIENPTkZJ R19QUk9WRV9SQVdfTE9DS19ORVNUSU5HIHRvIGNvbW1vbi9kZWJ1ZyAoV2FpbWFuIExvbmcpCist IHJlZGhhdC9jb25maWdzOiBNb3ZlIGFsbCB0aGUgbG9jayBkZWJ1Z2dpbmcgS2NvbmZpZydzIHRv IGNvbW1vbiAoV2FpbWFuIExvbmcpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX0JM S19DR1JPVVBfUFVOVF9CSU8gZm9yIFJIRUwgKE5lYWwgR29tcGEpIFtSSEVMLTc5NzExXQorLSBm ZWRvcmE6IHBlbmRpbmc6IGRyb3AgVVNCX09OQk9BUkRfREVWX1VTQjU3NDQgKFBldGVyIFJvYmlu c29uKQorLSBlZmksbG9ja2Rvd246IGZpeCBrZXJuZWwgbG9ja2Rvd24gb24gU2VjdXJlIEJvb3Qg KE9uZHJlaiBNb3NuYWNlaykge0NWRS0yMDI1LTEyNzJ9CistIGZlZG9yYTogVXBkYXRlIHZib3gg ZHJpdmVycyAoUGV0ZXIgUm9iaW5zb24pCistIERyb3AgdGhlIHMzOTB4IENPTkZJR19SRUdNQVAg ZnJvbSBSSEVMIHBlbmRpbmcgYXMgdXBzdHJlYW0gcmVtb3ZlZCB0aGUgZGVwIChKdXN0aW4gTS4g Rm9yYmVzKQorLSBmZWRvcmE6IGFybTY0OiBlbmFibGUgUlQ1NjE2IGNvZGVjIChNYXJjaW4gSnVz emtpZXdpY3opCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBEaXNhYmxlIENPTkZJR19G U19EQVggY29uZmlnIChEb3JpbmRhIEJhc3NleSkKKy0gY29uZmlnOiB1cGRhdGUgQ09ORklHX0xT TSB0byBtYXRjaCB1cHN0cmVhbSAoUnlhbiBTdWxsaXZhbikKKy0gcmVkaGF0OiBjb25maWdzOiBl bmFibGUgQ09ORklHX0lOVEVMX0lTSF9GSVJNV0FSRV9ET1dOTE9BREVSIGZvciBSSEVMIChEYXZp ZCBBcmNhcmkpCistIHJlZGhhdC9NYWtlZmlsZTogQWRkIGhlbHAgdGV4dCBmb3IgdGFyZ2V0IGRp c3QtZHVtcC12YXJpYWJsZXMgKEVkZXIgWnVsaWFuKQorLSByZWRoYXQ6IHVwZGF0ZSBzZWxmLXRl c3QtZGF0YSBmb3IgbmV3IGRlZmF1bHQgUkhKT0JTIHZhbHVlIChQYXRyaWNrIFRhbGJlcnQpCist IHNldCBhIG1vcmUgcmVhc29uYWJsZSBkZWZhdWx0IGZvciBudW1iZXIgb2Ygam9icyAoVGhvcnN0 ZW4gTGVlbWh1aXMpCistIHJlZGhhdDogYXV0b21vdGl2ZTogZGVmaW5lIENPTkZJR19SSF9BVVRP TU9USVZFIChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9jb25maWdzOiBkaXNhYmxlIENPTkZJR19U Q1BfQU8gb24gUkhFTCAoU2FicmluYSBEdWJyb2NhKQorLSByZWRoYXQvY29uZmlnczogYW1lbmQg VVNCX09OQk9BUkRfREVWX1VTQjU3NDQgKEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdC9jb25maWdz OiBhdXRvbW90aXZlOiBEaXNhYmxlIFNZU0lQQyBhbmQgTVFVRVVFIGNvbmZpZ3MgKERvcmluZGEg QmFzc2V5KQorLSByZWRoYXQ6IGtlcm5lbC5zcGVjOiBhZGQgeW5sIHRvIGtlcm5lbC10b29scyAo SmFuIFN0YW5jZWspCistIGZlZG9yYTogZW5hYmxlIFVTQiBkZXZpY2UgVVNCNTc0NCAoUGV0ZXIg Um9iaW5zb24pCistIHJoZWw6IGVuYWJsZSBGV19DQUNIRSBvbiBSSEVMIChEYXZlIEFpcmxpZSkK Ky0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IERpc2FibGUgdGhlIFNDVFAgUHJvdG9jb2wg KERvcmluZGEgQmFzc2V5KQorLSByZWRoYXQ6IGdlbmVyYWxpemUgcnVsZSBmb3Iga3VuaXQgYW5k IHRlc3Qga21vZCBwbGFjZW1lbnQgKEphbiBTdGFuY2VrKQorLSBNb3ZlIENPTkZJR19QQ0lfUkVB TExPQ19FTkFCTEVfQVVUTyBvdXQgb2YgY29tbW9uIGFzIHRoZXkgaGF2ZSBkaXZlcmdlZCAoSnVz dGluIE0uIEZvcmJlcykKKy0gZmVkb3JhOiBhcm02NDogZW5hYmxlIFNpbGljb24gTWl0dXMgU001 NTAyIEV4dGNvbiBkcml2ZXIgKFNhbSBEYXkpCistIGZlZG9yYTogYXJtNjQ6IGVuYWJsZSBSaWNo dGVrIFJUNTAzMyBNRkQrY2hhcmdlcityZWd1bGF0b3IgbW9kdWxlcyAoU2FtIERheSkKKy0gY29u Zmlncy9mZWRvcmE6IEVuYWJsZSBDT05GSUdfUENJX1JFQUxMT0NfRU5BQkxFX0FVVE8gKFlhbmtv IEthbmV0aSkKKy0gRW5hYmxlIENPTkZJR19JTlRFTF9NRUlfUFhQIGFuZCBDT05GSUdfRFJNX0k5 MTVfUFhQIG9uIHJoZWwgKEpvY2VseW4gRmFsZW1wZSkKKy0gRW5hYmxlIEludGVsIFhlIEdyYXBo aWNzIChNaWthIFBlbnR0aWzDpCkKKy0gVHVybiBvbiBDT05GSUdfRFJNX0FDQ0VMX0FNRFhETkEg Zm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGRpc2FibGUg Q09ORklHX0FGX1VOSVhfT09CIG9uIFJIRUwgKE1hcmNlbG8gUmljYXJkbyBMZWl0bmVyKQorLSBy ZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRGlzYWJsZSB3aXJlbGVzcyBuZXR3b3JrIGFuZCBp dCdzIGRlcGVuZGVuY2llcyAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdC9rZXJuZWwuc3BlYzog d29yayBhcm91bmQgZmluZC1kZWJ1Z2luZm8gYWJvcnRpbmcgY3Jvc3MgYnVpbGRzIChKYW4gU3Rh bmNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6IERlZmF1bHQgdG8gYmF0Y2hlZCBpbnZhbGlkYXRpb24g b24gczM5MCAoSmVycnkgU25pdHNlbGFhcikKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6 IHNldCBDT05GSUdfVElNRU9VVF9QQU5JQyAoRW5yaWMgQmFsbGV0Ym8gaSBTZXJyYSkKKy0gZHJv cCAlJXtfZGF0YWRpcn0vcGVyZi1jb3JlLyogZnJvbSBrZXJuZWwuc3BlYyAoVGhvcnN0ZW4gTGVl bWh1aXMpCistIHB1dCBuZXcgbWlzY19taW5vcl9rdW5pdCBpbiBtb2R1bGVzLWludGVybmFsIChU aG9yc3RlbiBMZWVtaHVpcykKKy0gcHV0IG5ldyBjaXJydXMga3VuaXQgdGVzdHMgaW4gbW9kdWxl cy1pbnRlcm5hbCAoVGhvcnN0ZW4gTGVlbWh1aXMpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUg aUJGVCBwYXJzaW5nIG9uIGFhcmNoNjQgKENocmlzIExlZWNoKQorLSByZWRoYXQ6IGtlcm5lbC5z cGVjOiBmaXggYnVpbGQgd2l0aCBtZXJnZWQtc2JpbiAoWmJpZ25pZXcgSsSZZHJ6ZWpld3NraS1T em1laykKKy0gRml4IHVwIENPTkZJR19SRUdNQVAgbWlzbWF0Y2ggKFNjb3R0IFdlYXZlcikKKy0g cmVkaGF0OiBmaXggbW9kdWxlcy5vcmRlciB0YXJnZXQgKFNjb3R0IFdlYXZlcikKKy0gRml4IHVw IENPTkZJR19DUkNfVDEwRElGX0lNUExfR0VORVJJQyBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJl cykKKy0gRml4IG1pc21hdGNoZXMgZm9yIDYuMTMgbWVyZ2Ugd2luZG93IChKdXN0aW4gTS4gRm9y YmVzKQorLSBSZXNldCByaGVsdmVyIGFuZCB0cmltIGNoYW5nZWxvZyBmb3IgNi4xNCAoSnVzdGlu IE0uIEZvcmJlcykKKy0gVHVybiBvZmYgQ09ORklHX0FSTV9USU1FUl9TUDgwNCBmb3IgYXV0b21v dGl2ZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gU2V0IEFSTV9USU1FUl9TUDgwNCAoSnVzdGluIE0u IEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBhZGR0aW9uYWwgc2E4Nzc1IHJlbGF0 ZWQgS2NvbmZpZ3MgKEJyaWFuIE1hc25leSkKKy0gcmVkaGF0OiBBZGQgcnVzdGZtdCB0byBkZXBz IChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgZGVwcmVjYXRlZCBD T05GSUdfTENTIG9wdGlvbiBvbiBzMzkwIChNZXRlIER1cmx1KSBbUkhFTC02ODI5Nl0KKy0gcmVk aGF0L2NvbmZpZ3M6IG1ha2UgbW9kdWxhci9kaXNhYmxlIE5GUyBzdXBwb3J0IChEb3JpbmRhIEJh c3NleSkKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgdW5zYWZlIHF1ZXVpbmcgZGlzY2lwbGlu ZXMgKERvcmluZGEgQmFzc2V5KQorLSBjb25maWdzOiBtb3ZlIHBlbmRpbmcgUlQgY29uZmlncyBp bnRvIHJoZWwvcnQvZ2VuZXJpYyAoQ2xhcmsgV2lsbGlhbXMpCistIFR1cm4gb24gUFJPVkVfUkFX X0xPQ0tfTkVTVElORyBmb3IgUkhFTCBkZWJ1ZyBidWlsZHMgKEp1c3RpbiBNLiBGb3JiZXMpCist IHJlZGhhdC9NYWtlZmlsZTogRml4IGxvbmcgZGlzdC1mdWxsLWhlbHAgZXhlY3V0aW9uIHRpbWUg KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogVXBkYXRlIGRhdGEgdG8gYWRk IEhFTFBfVFlQRVMgdmFyaWFibGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxl OiBBZGQgbmV3IGRpc3QtaGVscCBmdW5jdGlvbmFsaXR5IChQcmFyaXQgQmhhcmdhdmEpCistIE1h a2VmaWxlOiBEbyBub3Qgb3V0cHV0IExPQ0FMVkVSU0lPTiBtZXNzYWdlIGZvciBoZWxwIGNvbW1h bmRzIChQcmFyaXQgQmhhcmdhdmEpCistIEZlZG9yYSA2LjEzIGNvbmZpZ3MgcGFydCAyIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgNi4xMyBjb25maWdzIHBhcnQgMSAoSnVzdGluIE0uIEZv cmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfVkZBVF9GUyBhcyBhIG1vZHVs ZSAoRG9yaW5kYSBCYXNzZXkpCistIHJlZGhhdDogY3JlYXRlICdkZWJ1ZycgYWRkb24gZm9yIFVL SSAoTGkgVGlhbikKKy0ga2VybmVsLnNwZWM6IEJ1aWxkIGNwdXBvd2VyIG9uIHJpc2N2NjQgKFlh bmtvIEthbmV0aSkKKy0gUkhFTDogU2V0IGNvcnJlY3QgY29uZmlnIG9wdGlvbiBmb3IgQ1JZUFRP X0hNQUNfUzM5MCAoTWV0ZSBEdXJsdSkgW1JIRUwtMjQxMzddCistIHJlZGhhdC9rZXJuZWwuc3Bl YzogYWRkIGlwdXRpbHMgdG8gdGhlIHJlcXVpcmVzIGxpc3QgZm9yIHNlbGZ0ZXN0cy1pbnRlcm5h bCAoQnJpYW4gTWFzbmV5KQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IFJlcXVpcmUg a2VybmVsLXRvb2xzLWxpYnMgaW4gcnRsYSAoVG9tYXMgR2xvemFyKQorLSByZWRoYXQ6IG1ha2Ug a2VybmVsLWRlYnVnLXVraS12aXJ0IGluc3RhbGxhYmxlIHdpdGhvdXQga2VybmVsLWRlYnVnLWNv cmUgKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09ORklHX1VT Ql9YSENJX1BDSV9SRU5FU0FTIG9uIFJIRUwgKERlc25lcyBOdW5lcykgW1JIRUwtNzIwOTNdCist IHJlZGhhdC9jb25maWdzOiBSZS1lbmFibGUgWlJBTSBiYWNrZW5kcyBhbmQgdW5pZnkgY29uZmln dXJhdGlvbiAoTmVhbCBHb21wYSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGRpc2Fi bGUgQ09ORklHX0FJTyAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdC9jb25maWdzOiBSZS1lbmFi bGUgQ09ORklHX0lORklOSUJBTkRfVk1XQVJFX1BWUkRNQSAoVml0YWx5IEt1em5ldHNvdikKKy0g cmVkaGF0L2NvbmZpZ3M6IFBSRUVNUFRfTk9USUZJRVJTIGRvZXMgbm90IG5lZWQgdG8gYmUgZXhw bGljaXRseSBsaXN0ZWQgKE1pY2hhbCBTY2htaWR0KQorLSByZWRoYXQvY29uZmlnczogZGVsZXRl IGFsbCBDT05GSUdfUFJFRU1QVF8qQkVIQVZJT1VSIChNaWNoYWwgU2NobWlkdCkKKy0gcmVkaGF0 L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGRpc2FibGUgQ09ORklHX05FVF9EUk9QX01PTklUT1IgKERh dmlkZSBDYXJhdHRpKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIHRoZSBDUzQyTDg0IGRyaXZl ciBvbiBGZWRvcmEgKE5lYWwgR29tcGEpCistIGdlbmVyaWM6IFJlbW92ZSBhbmQgY2xlYW51cHMg ZnJvbSBzdGFnaW5nIDYuMTMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IGNvbmZpZ3M6IENs ZWFuIHVwIERWQiBzZXR0aW5ncyBpbiBSSEVMIChLYXRlIEhzdWFuKQorLSBNb3ZlIENPTkZJR19B UkNIX1RFR1JBXzI0MV9TT0MgY29uZmlnL2NvbW1vbiBzbyB0aGF0IGl0IGlzIGVuYWJsZWQgZm9y IFJIRUwgYXMgd2VsbCBhcyBGZWRvcmEuIEdldCByaWQgb2YgdW5lZWRlZCBDT05GSUdfVEVHUkEy NDFfQ01EUVYgaW4gY29uZmlncy9mZWRvcmEgd2hpbGUgd2UncmUgYXQgaXQuIChNYXJrIFNhbHRl cikKKy0gZmVkb3JhOiBhcm02NDogRW5hYmxlIHRoZSByb2NrY2hpcCBIRE1JIFFQIHN1cHBvcnQg KFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IGNvbmZpZ3M6IHJoZWw6IGFhcmNoNjQ6IFN1cHBv cnQgTlYgSmV0c29uIE1JUEkgY2FtZXJhIChLYXRlIEhzdWFuKQorLSBnaXRsYWItY2k6IGRpc2Fi bGUgY2xhbmcgQ0kgcGlwZWxpbmVzIChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9jb25maWdzOiBS ZW1vdmUgb2Jzb2xldGUgYXJjaDY0LzY0ay9DT05GSUdfRk9SQ0VfTUFYX1pPTkVPUkRFUiAoV2Fp bWFuIExvbmcpCistIEZpeCB1cCBRQ09NX0VNQUMgY29uZmlnIGZvciBGZWRvcmEgKEp1c3RpbiBN LiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBkaXNhYmxlIENPTkZJR19J T19VUklORyAoSWFuIE11bGxpbnMpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogTGlu ayBydGxhIGFnYWluc3QgaW4tdHJlZSBsaWJjcHVwb3dlciAoVG9tYXMgR2xvemFyKQorLSByZWRo YXQ6IGNvbmZpZ3M6IGVuYWJsZSBJTlRFTF9QTFJfVFBNSSBmb3IgUkhFTCAoRGF2aWQgQXJjYXJp KQorLSBjb25maWdzOiBFbmFibGUgQ09ORklHX05FVEtJVCBmb3IgUkhFTCAoVG9rZSBIw7hpbGFu ZC1Kw7hyZ2Vuc2VuKQorLSByZWRoYXQ6IGZpeCBidWlsZC9pbnN0YWxsIHRhcmdldHMgaW4gbmV0 ZmlsdGVyIGtzZWxmdGVzdCAoRGF2aWRlIENhcmF0dGkpCistIFJIRUw6IGRpc2FibGUgdGhlIGJ0 dCBkcml2ZXIgKEplZmYgTW95ZXIpCistIHJlZGhhdC9jb25maWdzOiBkZWZhdWx0IHRvIFBSRUVN UFRfTEFaWSBvbiB4ODYsIHJpc2N2IChNaWNoYWwgU2NobWlkdCkKKy0gcmVkaGF0L2NvbmZpZ3M6 IE5ldyBjb25maWcgQ09ORklHX1BSRUVNUFRfTEFaWSAoTWljaGFsIFNjaG1pZHQpCistIGNyeXB0 bzogc2lnIC0gRGlzYWJsZSBzaWduaW5nIChIZXJiZXJ0IFh1KQorLSByZWRoYXQvY29uZmlnczog ZW5hYmxlIFNFUklBTF9BTUJBX1BMMDExIGZvciBhdXRvbW90aXZlIChSYWR1IFJlbmRlYykKKy0g YzEwczogZGlzYWJsZSB0ZXN0cyBpbiBDS0kgcGlwZWxpbmVzIChNaWNoYWVsIEhvZm1hbm4pCist IHJlZGhhdDogRHJvcCBicGZ0b29sIGZyb20ga2VybmVsIHNwZWMgKFZpa3RvciBNYWxpaykKKy0g QmV0dGVyIGZpeGVzIGZvciB0aGUgZmVkb3JhIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQor LSBNaXNtYXRjaCBmaXggdXBzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhh dC9jb25maWdzOiBFbmFibGUgSW50ZWwgQmx1ZXRvb3RoIFBDSUUgZHJpdmVycyAoQmFzdGllbiBO b2NlcmEpCistIE9uZSBtb3JlIHBlbmRpbmcgdG8gZml4IGEgbWlzbWF0Y2ggKEp1c3RpbiBNLiBG b3JiZXMpCistIHJlZGhhdDogZml4IFJUIFBSRUVNUFQgY29uZmlncyBmb3IgRmVkb3JhIGFuZCBS SEVMIChDbGFyayBXaWxsaWFtcykKKy0gUGVuZGluZyBmaXhlcyB0byBhdm9pZCBtaXNtYXRjaCBm b3IgNi4xMyAoSnVzdGluIE0uIEZvcmJlcykKKy0gUmVzZXQgY2hhbmdlbG9nIGZvciA2LjEzIChK dXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBSSEVMX1JFTEVBU0UgZm9yIDYuMTMgKEp1c3RpbiBN LiBGb3JiZXMpCistIHJlZGhhdDogTW92ZSBwZXJmX2RsZmlsdGVyLmggZnJvbSBsaWJwZXJmLWRl dmVsIHRvIHBlcmYgKEFraWhpa28gT2Rha2kpCistIENvbnNvbGlkYXRlIGNvbmZpZ3MgdG8gY29t bW9uIGZvciA2LjEyIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogY2xlYW51 cCBDT05GSUdfREVWX0RBWCAoRGF2aWQgSGlsZGVuYnJhbmQpCistIHJlZGhhdC9jb25maWdzOiBj bGVhbnVwIENPTkZJR19UUkFOU1BBUkVOVF9IVUdFUEFHRV9NQURWSVNFIGZvciBGZWRvcmEgKERh dmlkIEhpbGRlbmJyYW5kKQorLSByZWRoYXQvY29uZmlnczogY2xlYW51cCBDT05GSUdfVFJBTlNQ QVJFTlRfSFVHRVBBR0UgKERhdmlkIEhpbGRlbmJyYW5kKQorLSByZWRoYXQvY29uZmlnczogZW5h YmxlIENPTkZJR19UUkFOU1BBUkVOVF9IVUdFUEFHRSBvbiBzMzkweCBpbiBGZWRvcmEgKERhdmlk IEhpbGRlbmJyYW5kKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRW5hYmxlIGo3ODRz NGV2bSBhbTMzNTkgdHNjYWRjIGNvbmZpZ3MgKEpvZWwgU2xlYm9kbmljaykKKy0gcmVkaGF0L2Nv bmZpZ3M6IGRlbGV0ZSByZW5hbWVkIENPTkZJR19NTFg1X0VOX01BQ1NFQyAoTWljaGFsIFNjaG1p ZHQpCistIHJoZWw6IGRpc2FibGUgREVMTF9SQlUgYW5kIGNsZWFudXAgcmVsYXRlZCBkZXBzIChQ ZXRlciBSb2JpbnNvbikKKy0gZ2l0bGFiLWNpOiBBZGQgQ0tJX1JFVFJJR0dFUl9QSVBFTElORSAo VGFsZXMgZGEgQXBhcmVjaWRhKQorLSByZWRoYXQ6IGNvbmZpZ3M6IGRpc2FibGUgdGhlIHFsYTR4 eHggaVNDU0kgZHJpdmVyIChDaHJpcyBMZWVjaCkgW1JIRUwtMTI0Ml0KKy0gUmVtb3ZlIGR1cGxp Y2F0ZWQgQ09ORklHcyBiZXR3ZWVuIGF1dG9tb3RpdmUgYW5kIFJIRUwgKEp1bGlvIEZhcmFjY28p CistIHJlZGhhdDogdXBkYXRlIHNlbGYtdGVzdCBkYXRhIGZvciBhZGRpdGlvbiBvZiBhdXRvbW90 aXZlIChTY290dCBXZWF2ZXIpCistIGdpdGxhYi1jaTogZW5hYmxlIGF1dG9tb3RpdmUgcGlwZWxp bmUgKFNjb3R0IFdlYXZlcikKKy0gYXV0b21vdGl2ZTogbW92ZSBwZW5kaW5nIGNvbmZpZ3MgdG8g YXV0b21vdGl2ZS9nZW5lcmljIChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9jb25maWdzOiBjaGFu Z2UgUmVuZXNhcyBlTU1DIGRyaXZlciBhbmQgZGVwZW5kZW5jaWVzIHRvIGJ1aWx0LWluIChSYWR1 IFJlbmRlYykKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IFJlbW92ZSBhdXRvbW90aXZl IHNwZWNpZmljIG92ZXJyaWRlIENPTkZJR19PTUFQMlBMVVNfTUJPWCBCeSByZW1vdmluZyB0aGlz IGF1dG9tb3RpdmUtc3BlY2lmaWMgb3ZlcnJpZGUsIHRoZSBjb25maWd1cmF0aW9uIHdpbGwgZGVm YXVsdCB0byB0aGUgY29tbW9uIGNvbmZpZ3VyYXRpb24gKENPTkZJR19PTUFQMlBMVVNfTUJPWD1t KSwgd2hpY2ggZW5hYmxlcyB0aGUgZHJpdmVyIGFzIGEgbW9kdWxlLiAoTWFydGluIE1jQ29ubmVs bCkKKy0gQ29uZmlnIGVuYWJsZW1lbnQgb2YgdGhlIFJlbmVzYXMgUi1DYXIgUzQgU29DIChSYWR1 IFJlbmRlYykgW1JIRUwtNDQzMDZdCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBFbmFi bGUgVVNCX0NETlMzX1RJIGZvciBUSSBwbGF0Zm9ybXMgKEFuZHJldyBIYWxhbmV5KQorLSByZWRo YXQvY29uZmlnczogYXV0b21vdGl2ZTogRW5hYmxlIGo3ODRzNGV2bSBTUEkgY29uZmlncyAoSm9l bCBTbGVib2RuaWNrKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRW5hYmxlIFRQUzY1 OTQgTUZEIChKb2VsIFNsZWJvZG5pY2spCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBz dG9wIG92ZXJyaWRpbmcgQ1JZUFRPX0VDREggKEFuZHJldyBIYWxhbmV5KQorLSByZWRoYXQvY29u ZmlnczogYXV0b21vdGl2ZTogRW5hYmxlIFBDSV9KNzIxRSAoQW5kcmV3IEhhbGFuZXkpCistIHJl ZGhhdC9jb25maWdzOiBjaGFuZ2Ugc29tZSBUSSBwbGF0Zm9ybSBkcml2ZXJzIHRvIGJ1aWx0LWlu IChFbnJpYyBCYWxsZXRibyBpIFNlcnJhKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTog RW5hYmxlIFRJIGo3ODRzNGV2bSBkaXNwbGF5IGRlcGVuZGVuY2llcyAoQW5kcmV3IEhhbGFuZXkp CistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBtYXRjaCBhcmsgY29uZmlncyB0byBjczkg bWFpbi1hdXRvbW90aXZlIChTaGF3biBEb2hlcnR5KSBbUkhFTC0zNTk5NV0KKy0gcmVkaGF0L2Nv bmZpZ3M6IGF1dG9tb3RpdmU6IEVuYWJsZSBUSSdzIHdhdGNoZG9nIGRyaXZlciAoQW5kcmV3IEhh bGFuZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBFbmFibGUgVEkncyBVRlMgY29u dHJvbGxlciAoQW5kcmV3IEhhbGFuZXkpCistIHJlZGhhdC9jb25maWdzOiBhdXRvbW90aXZlOiBF bmFibGUgbmV0d29ya2luZyBvbiB0aGUgSjc4NFM0RVZNIChBbmRyZXcgSGFsYW5leSkgW1JIRUwt MjkyNDVdCistIERpc2FibGUgdW5zdXBwb3J0ZWQga2VybmVsIHZhcmlhbnRzIGZvciBhdXRvbW90 aXZlIChEb24gWmlja3VzKQorLSBEaXNhYmxlIENPTkZJR19SVFc4OF8yMkJVIChEb24gWmlja3Vz KQorLSByZWRoYXQ6IERlbGV0ZSBDT05GSUdfRUZJX1pCT09UIHRvIHVzZSB0aGUgY29tbW9uIENP TkZJRyAoSnVsaW8gRmFyYWNjbykKKy0gcmVkaGF0OiBVcGRhdGUgYXV0b21vdGl2ZSBTUEVDIGZp bGUgd2l0aCBuZXcgc3RhbmRhcmRzIChKdWxpbyBGYXJhY2NvKQorLSByZWRoYXQ6IERpc2FibGUg V0VSUk9SIGZvciBhdXRvbW90aXZlIHRlbXBvcmFyaWx5IChKdWxpbyBGYXJhY2NvKQorLSByZWRo YXQ6IFVwZGF0ZSBzcGVjIGZpbGUgd2l0aCBhdXRvbW90aXZlIG1hY3JvcyAoSnVsaW8gRmFyYWNj bykKKy0gcmVkaGF0OiBBZGQgYXV0b21vdGl2ZSBDT05GSUdzIChKdWxpbyBGYXJhY2NvKQorLSBG ZWRvcmEgY29uZmlncyBmb3IgNi4xMiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZp Z3M6IEFkZCBDT05GSUdfQ1JZUFRPX0hNQUNfUzM5MCBjb25maWcgKE1ldGUgRHVybHUpIFtSSEVM LTUwNzk5XQorLSByZWRoYXQ6IGNvbmZpZ3M6IGNvbW1vbjogZ2VuZXJpYzogQ2xlYW4gdXAgRU0y OFhYIHRoYXQgYXJlIG1hc2tlZCBiZWhpbmQgQ09ORklHX1ZJREVPX0VNMjhYWCAoS2F0ZSBIc3Vh bikKKy0gcmVkaGF0L2NvbmZpZ3M6IFVwZGF0ZSBwb3dlcnBjIE5SX0NQVVMgY29uZmlnIChNYW1h dGhhIEluYW1kYXIpCistIHJlZGhhdDogdXNlIHN0cmljdGVyIHJ1bGUgZm9yIGt1bml0LmtvIChK YW4gU3RhbmNlaykKKy0gZmlsdGVybW9kOiBmaXggY2xrIGt1bml0IHRlc3QgYW5kIGt1bml0IGxv Y2F0aW9uIChOaWNvIFBhY2hlKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIHhyX3NlcmlhbCBv biByaGVsIChEZXNuZXMgTnVuZXMpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQVRIMTJLIGZv ciByaGVsIChKb3NlIElnbmFjaW8gVG9ybm9zIE1hcnRpbmV6KQorLSByZWRoYXQ6IGNvbmZpZ3M6 IHJoZWw6IGdlbmVyaWM6IHg4NjogRW5hYmxlIElQVTYgYmFzZWQgTUlQSSBjYW1lcmFzIChLYXRl IEhzdWFuKQorLSBvcy1idWlsZDogZW5hYmxlIENPTkZJR19TQ0hFRF9DTEFTU19FWFQgZm9yIFJI RUwgKFBoaWwgQXVsZCkKKy0gRmVkb3JhIDYuMTIgY29uZmlncyBwYXJ0IDEgKEp1c3RpbiBNLiBG b3JiZXMpCistIHJlZGhhdDogc2V0IG5ldyBnY292IGNvbmZpZ3MgKEphbiBTdGFuY2VrKQorLSBE b24ndCBpZ25vcmUgZ2l0a2VlcCBmaWxlcyBmb3IgYXJrLWluZnJhIChEb24gWmlja3VzKQorLSBy ZWRoYXQva2VybmVsLnNwZWM6IGRvbid0IGNsZWFyIGVudGlyZSBsaWJkaXIgd2hlbiBidWlsZGlu ZyB0b29scyAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgdXNiaXAgZm9y IHJoZWwgKEpvc2UgSWduYWNpbyBUb3Jub3MgTWFydGluZXopCistIHJlZGhhdDogY3JlYXRlICdj cmFzaGtlcm5lbD0nIGFkZG9ucyBmb3IgVUtJIChWaXRhbHkgS3V6bmV0c292KQorLSByZWRoYXQ6 IGF2b2lkIHN1cGVyZmx1b3VzIHF1b3RlcyBpbiBVS0kgY21kbGluZSBhZGRvbmVzIChWaXRhbHkg S3V6bmV0c292KQorLSBmZWRvcmE6IGFybTogdXBkYXRlcyBmb3IgNi4xMiAoUGV0ZXIgUm9iaW5z b24pCistIHJlZGhhdC9jb25maWdzOiBhZGQgYm9vdGNvbmZpZyB0byBrZXJuZWwtdG9vbHMgcGFj a2FnZSAoQnJpYW4gTWFzbmV5KQorLSBFbmFibGUgQ09ORklHX1NFQ1VSSVRZX0xBTkRMT0NLIGZv ciBSSEVMIChaYmlnbmlldyBKxJlkcnplamV3c2tpLVN6bWVrKSBbUkhFTC04ODEwXQorLSByZWRo YXQ6IGNvbmZpZ3M6IERyb3AgQ09ORklHX01FTVNUSUNLX1JFQUxURUtfUENJIGNvbmZpZyBvcHRp b24gKERlc25lcyBOdW5lcykKKy0gVXBkYXRlIHRoZSBSSEVMX0RJRkZFUkVOQ0VTIGhlbHAgc3Ry aW5nIChEb24gWmlja3VzKQorLSBQdXQgYnVpbGQgZnJhbWV3b3JrIGZvciBSVCBrZXJuZWwgaW4g cGxhY2UgZm9yIEZlZG9yYSAoQ2xhcmsgV2lsbGlhbXMpCistIGdlbmVyaWM6IGVuYWJsZSBSUE1C IGZvciBhbGwgY29uZmlncyB0aGF0IGVuYWJsZSBNTUMgKFBldGVyIFJvYmluc29uKQorLSBmZWRv cmE6IHJpc2N2OiBEb24ndCBvdmVycmlkZSBNTUMgcGxhdGZvcm0gZGVmYXVsdHMgKFBldGVyIFJv Ymluc29uKQorLSBjb21tb246IG9ubHkgZW5hYmxlIG9uIE1NQ19EV19CTFVFRklFTEQgKFBldGVy IFJvYmluc29uKQorLSBmZWRvcmE6IGFhcmNoNjQ6IFN0b3Agb3ZlcnJpZGluZyBDT05GSUdfTU1D IGRlZmF1bHRzIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uZzogVGhlIEtTNzAxMCBkcml2ZXIg aGFzIGJlZW4gcmVtb3ZlZCAoUGV0ZXIgUm9iaW5zb24pCistIFRyaW0gQ2hhbmdlbG9nIGZvciA2 LjEyIChKdXN0aW4gTS4gRm9yYmVzKQorLSBFbmFibGUgQ09ORklHX1NFQ1VSSVRZX0lQRSBmb3Ig RmVkb3JhIChaYmlnbmlldyBKxJlkcnplamV3c2tpLVN6bWVrKQorLSByZWRoYXQ6IGFsbG93IHRv IG92ZXJyaWRlIFZFUlNJT05fT05fVVBTVFJFQU0gZnJvbSBjb21tYW5kIGxpbmUgKEphbiBTdGFu Y2VrKQorLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJsZSBDT05GSUdfU0VDVVJJVFlfVE9NT1lPIGlu IEZlZG9yYSBrZXJuZWxzIChUZXRzdW8gSGFuZGEpCistIFJldmVydCAiTWVyZ2UgYnJhbmNoICdl bmFibGVtZW50L2dwaW8tZXhwYW5kZXInIGludG8gJ29zLWJ1aWxkJyIgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHJlZGhhdDogY29uZmlnczogZGVjcmVhc2UgQ09ORklHX1BDUF9CQVRDSF9TQ0FMRV9N QVggKFJhZmFlbCBBcXVpbmkpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1JDVV9U UkFDRSBpbiBGZWRvcmEvUkVITCBrZXJuZWxzIChXYWltYW4gTG9uZykKKy0gZmVkb3JhOiBkaXN0 YWJsZSBSVEw4MTkyRSB3aWZpIGRyaXZlciAoUGV0ZXIgUm9iaW5zb24pCistIGNvbW1vbjogYXJt NjQ6IEZpeHVwIGFuZCBjbGVhbnVwIHNvbWUgU0NNSSBvcHRpb25zIChQZXRlciBSb2JpbnNvbikK Ky0gY29tbW9uOiBDbGVhbnVwIEFSTV9TQ01JX1RSQU5TUE9SVCBvcHRpb25zIChQZXRlciBSb2Jp bnNvbikKKy0gY29uZmlnczogZmVkb3JhL3g4NjogU2V0IENPTkZJR19DUllQVE9fREVWX0NDUF9E RD15IChIYW5zIGRlIEdvZWRlKQorLSBUdXJuIG9uIFpSQU1fV1JJVEVCQUNLIGZvciBGZWRvcmEg KEp1c3RpbiBNLiBGb3JiZXMpCistIGNvbmZpZ3M6IHJoZWw6IEZpeCBkZXNpZ253YXJlIEkyQyBj b250cm9sbGVycyByZWxhdGVkIGNvbmZpZyBzZXR0aW5ncyAoSGFucyBkZSBHb2VkZSkKKy0gRW5h YmxlIENPTkZJR19ETUFfTlVNQV9DTUEgZm9yIHg4Nl82NCBhbmQgYWFyY2g2NCAoQ2hyaXMgdm9u IFJlY2tsaW5naGF1c2VuKQorLSBuZXcgY29uZmlnIGluIGRyaXZlcnMvcGh5IChJemFiZWxhIEJh a29sbGFyaSkKKy0gY29uZmlnczogZmVkb3JhOiBVbnNldCBDT05GSUdfSTJDX0RFU0lHTldBUkVf Q09SRSBvbiBzMzkweCAoSGFucyBkZSBHb2VkZSkKKy0gY29uZmlnczogZmVkb3JhOiBEcm9wIGR1 cGxpY2F0ZSBDT05GSUdfSTJDX0RFU0lHTldBUkVfQ09SRSBmb3IgeDg2XzY0IGFuZCBhYXJjaDY0 IChIYW5zIGRlIEdvZWRlKQorLSBFbmFibGUgREVTSUdOV0FSRV9DT1JFIGZvciBwcGMgYXMgd2Vs bCAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVwIEkyQ19ERVNJR05XQVJFX0NPUkUgY29uZmln IGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIGNvbmZpZ3MgZm9yIFJUIGRlcHMgKENs YXJrIFdpbGxpYW1zKQorLSBDT05GSUdfT0ZfT1ZFUkxBWTogZW5hYmxlIGZvciBhYXJjaDY0IGFu ZCBwb3dlcnBjIChTY290dCBXZWF2ZXIpCistIHJlZGhhdDogZW5hYmxlIGNoYW5nZXMgdG8gYnVp bGQgcnQgdmFyaWFudHMgKENsYXJrIFdpbGxpYW1zKQorLSByZWRoYXQ6IGNsZWFuIHVwIHBlbmRp bmctcmhlbCAoUGF0cmljayBUYWxiZXJ0KQorLSBFbmFibGUgQ09ORklHX1NDSEVEX0NMQVNTX0VY VCBmb3IgRmVkb3JhIChKb3NlIEZlcm5hbmRleikKKy0gcmVkaGF0L2NvbmZpZ3M6IG5ldyBjb25m aWcgaW4gYXJjaC9zMzkwIChJemFiZWxhIEJha29sbGFyaSkKKy0gcmVkaGF0OiBpZ25vcmUgcnBt aW5zcGVjdCBydW5wYXRoIHJlcG9ydCBvbiBzZWxmdGVzdHMvYnBmL2NwdXY0L3VyYW5kb21fcmVh ZCAoVmlrdG9yIE1hbGlrKQorLSBbZmVkb3JhXSBjb25maWdzOiBhZGQgZW5kIG9mIGZpbGUgbmV3 bGluZSB0byBDT05GSUdfRE1BREVWSUNFU19WREVCVUcgKFBhdHJpY2sgVGFsYmVydCkKKy0gdW5z ZXQgQ09ORklHX0RNQURFVklDRVNfVkRFQlVHIChjbXVyZikKKy0gc3RvcCBpbnN0YWxsaW5nIHRv b2xzL2J1aWxkL0J1aWxkLCBnb25lIHdpdGggZWE5NzQwMjhhMDQ5ZiAoVGhvcnN0ZW4gTGVlbWh1 aXMpCistIHJlZGhhdC9jb25maWdzOiBVcGRhdGUgTE9DS0RFUCBjb25maWdzIChXYWltYW4gTG9u ZykKKy0gdWtpLXZpcnQ6IEFkZCBpMThuIG1vZHVsZSAoVml0YWx5IEt1em5ldHNvdikKKy0gdWtp LXZpcnQ6IERyb3AgREJVUyBzdXBwb3J0IGZyb20gaW5pdHJhbWZzIChWaXRhbHkgS3V6bmV0c292 KQorLSB1a2ktdmlydDogRHJvcCByZWR1bmRhbnQgbW9kdWxlcyBmcm9tIGRyYWN1dC12aXJ0LmNv bmYgKFZpdGFseSBLdXpuZXRzb3YpCistIHVraS12aXJ0OiBEcm9wIHVzcm1vdW50IGRyYWN1dCBt b2R1bGUgKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdDogbmV3IEFNQ0NfUVQyMDI1X1BIWSBj b25maWcgaW4gZHJpdmVycy9uZXQvcGh5IChQYXRyaWNrIFRhbGJlcnQpCistIHJlZGhhdDogY2hh bmdlIHNjaGVkdWxlIGpvYnMgaW1hZ2UgZnJvbSBja2ktdG9vbHMgdG8gYnVpbGRlci1yYXdoaWRl IChQYXRyaWNrIFRhbGJlcnQpCistIEFkZCBDT05GSUdfU05EX1NPQ19SVDEzMjBfU0RXIHRvIHBl bmRpbmctcmhlbCBmb3IgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gQ09O RklHX1NORF9TT0NfUlQxMzIwX1NEVyBpbiBwZW5kaW5nIHJoZWwgKEp1c3RpbiBNLiBGb3JiZXMp CistIGNvbmZpZ3M6IGRpc2FibGUgQ09ORklHX0FNQ0NfUVQyMDI1X1BIWSBpbiBwZW5kaW5nIChQ YXRyaWNrIFRhbGJlcnQpCistIGZlZG9yYTogdHVybiBvbiBDT05GSUdfRkRNQSBmb3IgcG93ZXJw YyAoUGF0cmljayBUYWxiZXJ0KQorLSBUdXJuIG9uIENPTkZJR19GRE1BIGluIHBlbmRpbmcgZm9y IEZlZG9yYSBhcm0gYW5kIHJpc2N2IHRvIGF2b2lkIGEgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3Ji ZXMpCistIFJlc2V0IFJIRUxfUkVMRUFTRSBmb3IgNi4xMiAoSnVzdGluIE0uIEZvcmJlcykKKy0g Q29uc29saWRhdGUgY29uZmlncyBpbnRvIGNvbW1vbiBmb3IgNi4xMSBrZXJuZWxzIChKdXN0aW4g TS4gRm9yYmVzKQorLSB1a2ktdmlydDogYWRkIHN5c3RlbWQtY3J5cHRzZXR1cCBtb2R1bGUgKFZp dGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9kb2NzOiBmaXggY29tbWFuZCB0byBpbnN0YWxsIG1p c3NpbmcgYnVpbGQgZGVwZW5kZW5jaWVzIChEYXZpZGUgQ2F2YWxjYSkKKy0gc3BlYzogUmVzcGVj dCBycG1idWlsZCAtLXdpdGhvdXQgZGVidWdpbmZvIChPcmdhZCBTaGFuZWgpCistIGZlZG9yYS9j b25maWdzOiBlbmFibGUgR1BJTyBleHBhbmRlciBkcml2ZXJzIChSdXBpbmRlcmppdCBTaW5naCkK Ky0gcmVkaGF0L2NvbmZpZ3M6IFN3aXRjaCB0byB0aGUgUnVzdCBpbXBsZW1lbnRhdGlvbiBvZiBB WDg4Nzk2Ql9QSFkgZHJpdmVyIGZvciBGZWRvcmEgKE5lYWwgR29tcGEpCistIHJlZGhhdDogVHVy biBvbiBzdXBwb3J0IGZvciBSdXN0IGNvZGUgaW4gRmVkb3JhIChOZWFsIEdvbXBhKQorLSBUdXJu IG9mZiBSVVNUIGZvciByaXNjLXYgKEp1c3RpbiBNLiBGb3JiZXMpCistIGdpdGxhYi1jaTogYWxs b3cgZmFpbHVyZSBvZiBjbGFuZyBMVE8gcGlwZWxpbmVzIChNaWNoYWVsIEhvZm1hbm4pCistIHJl ZGhhdC9jb25maWdzOiBDb25zb2xpZGF0ZSB0aGUgQ09ORklHX0tWTV9CT09LM1NfSFZfUCpfVElN SU5HIHN3aXRjaGVzIChUaG9tYXMgSHV0aCkKKy0gcmVkaGF0L2NvbmZpZ3M6IENvbnNvbGlkYXRl IHRoZSBDT05GSUdfS1ZNX1NXX1BST1RFQ1RFRF9WTSBzd2l0Y2ggKFRob21hcyBIdXRoKQorLSBy ZWRoYXQvY29uZmlnczogQ29uc29saWRhdGUgdGhlIENPTkZJR19LVk1fSFlQRVJWIHN3aXRjaCAo VGhvbWFzIEh1dGgpCistIHJlZGhhdC9jb25maWdzOiBDb25zb2xpZGF0ZSB0aGUgQ09ORklHX0tW TV9BTURfU0VWIHN3aXRjaCAoVGhvbWFzIEh1dGgpCistIENsZWFudXAgc29tZSByaXNjdiBDT05G SUcgbG9jYXRpb25zIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgcGVuZGluZyByaXNjdiBG ZWRvcmEgY29uZmlncyBwb3N0IG1lcmdlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRvcmEvY29u ZmlnczogRW5hYmxlIFNDTUkgY29uZmlndXJhdGlvbiAoUnVwaW5kZXJqaXQgU2luZ2gpCistIFJl bW92ZSBTMzkwIHNwZWNpYWwgY29uZmlnIGZvciBQSFlMSUIgKEp1c3RpbiBNLiBGb3JiZXMpCist IERpc2FibGUgRUxOIGZvciByaXNjdjY0IChJc2FpYWggU3RhcGxldG9uKQorLSByZWRoYXQ6IGFk ZCBjaGVja3MgdG8gZW5zdXJlIG9ubHkgYnVpbGRpbmcgcmlzY3Y2NCBvbiBmZWRvcmEgKElzYWlh aCBTdGFwbGV0b24pCistIHJlZGhhdDogQWRkIG1pc3NpbmcgcmlzY3YgZmVkb3JhIGNvbmZpZ3Mg KElzYWlhaCBTdGFwbGV0b24pCistIEFkZCByaXNjdjY0IHRvIHRoZSBDSSBwaXBlbGluZXMgKElz YWlhaCBTdGFwbGV0b24pCistIHJlZGhhdDogUmVnZW5lcmF0ZSBkaXN0LXNlbGYtdGVzdC1kYXRh IGZvciByaXNjdjY0IChJc2FpYWggU3RhcGxldG9uKQorLSByZWRoYXQ6IEFkZCByaXNjdiBjb25m aWcgY2hhbmdlcyBmb3IgZmVkb3JhIChEYXZpZCBBYmR1cmFjaG1hbm92KQorLSByZWRoYXQ6IEFk ZCBzdXBwb3J0IGZvciByaXNjdiAoRGF2aWQgQWJkdXJhY2htYW5vdikKKy0gcmVkaGF0OiBEbyBu b3QgaW5jbHVkZSBVS0kgYWRkb25zIHR3aWNlIChWaXRhbHkgS3V6bmV0c292KQorLSByZWRoYXQ6 IHVwZGF0ZSBnYXRpbmcueW1sIChNaWNoYWVsIEhvZm1hbm4pCistIFJlbW92ZSBDT05GSUdfRlND QUNIRV9ERUJVRyBhcyBpdCBoYXMgYmVlbiByZW5hbWVkIChKdXN0aW4gTS4gRm9yYmVzKQorLSBT ZXQgRmVkb3JhIGNvbmZpZ3MgZm9yIDYuMTEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9j b25maWdzOiBNaWNyb2NoaXAgbGFuNzQzeCBkcml2ZXIgKEl6YWJlbGEgQmFrb2xsYXJpKQorLSBy ZWRoYXQ6IGluY2x1ZGUgcmVzb2x2ZV9idGZpZHMgaW4ga2VybmVsLWRldmVsIChKYW4gU3RhbmNl aykKKy0gcmVkaGF0OiB3b3JrYXJvdW5kIENLSSBjcm9zcyBjb21waWxhdGlvbiBmb3Igc2NyaXB0 cyAoSmFuIFN0YW5jZWspCistIHNwZWM6IGZpeCAidW5leHBlY3RlZCBhcmd1bWVudCB0byBub24t cGFyYW1ldHJpYyBtYWNybyIgd2FybmluZ3MgKEphbiBTdGFuY2VrKQorLSBBZGQgd2Vha2RlcCBz dXBwb3J0IHRvIHRoZSBrZXJuZWwgc3BlYyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBj b25maWdzOiBkaXNhYmxlIFBGX0tFWSBpbiBSSEVMIChTYWJyaW5hIER1YnJvY2EpCistIGNyeXB0 bzogYWtjaXBoZXIgLSBEaXNhYmxlIHNpZ25pbmcgYW5kIGRlY3J5cHRpb24gKFZsYWRpcyBEcm9u b3YpIFtSSEVMLTU0MTgzXSB7Q1ZFLTIwMjMtNjI0MH0KKy0gY3J5cHRvOiBkaCAtIGltcGxlbWVu dCBGSVBTIFBDVCAoVmxhZGlzIERyb25vdikgW1JIRUwtNTQxODNdCistIGNyeXB0bzogZWNkaCAt IGRpc2FsbG93IHBsYWluICJlY2RoIiB1c2FnZSBpbiBGSVBTIG1vZGUgKFZsYWRpcyBEcm9ub3Yp IFtSSEVMLTU0MTgzXQorLSBjcnlwdG86IHNlcWl2IC0gZmxhZyBpbnN0YW50aWF0aW9ucyBhcyBG SVBTIGNvbXBsaWFudCAoVmxhZGlzIERyb25vdikgW1JIRUwtNTQxODNdCistIFtrZXJuZWxdIGJw Zjogc2V0IGRlZmF1bHQgdmFsdWUgZm9yIGJwZl9qaXRfaGFyZGVuIChBcnRlbSBTYXZrb3YpIFtS SEVMLTUxODk2XQorLSBmZWRvcmE6IGRpc2FibGUgQ09ORklHX0RSTV9XRVJST1IgKFBhdHJpY2sg VGFsYmVydCkKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgZGxtIGluIHJoZWwgY29uZmlncyAo QW5kcmV3IFByaWNlKQorLSByaGVsOiBhYXJjaDY0OiBlbmFibGUgcmVxdWlyZWQgUFNDSSBjb25m aWdzIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBFbmFibGUgQUY4MTMzSiBNYWduZXRvbWV0 ZXIgZHJpdmVyIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0OiBzcGVjOiBhZGQgY2FjaGVzdGF0 IGtzZWxmdGVzdCAoRXJpYyBDaGFudWRldCkKKy0gcmVkaGF0OiBobWFjIHNpZ24gdGhlIFVLSSBm b3IgRklQUyAoVml0YWx5IEt1em5ldHNvdikKKy0gbm90IHVwc3RyZWFtOiBEaXNhYmxlIHZkc28g Z2V0cmFuZG9tIHdoZW4gRklQUyBpcyBlbmFibGVkIChIZXJiZXJ0IFh1KQorLSBrZXJuZWw6IGNv bmZpZzogZW5hYmxlIGVyb2ZzIGx6bWEgY29tcHJlc3Npb24gKElhbiBLZW50KQorLSBmZWRvcmE6 IGRpc2FibGUgUlRMODE5MkNVIGluIEZlZG9yYSAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdDog Rml4IHRoZSBvd25lcnNoaXAgb2YgL2xpYi9tb2R1bGVzLzxrdmVyc2lvbj4gZGlyZWN0b3J5IChW aXRhbHkgS3V6bmV0c292KQorLSBuZXcgY29uZmlncyBpbiBkcml2ZXJzL3BoeSAoSXphYmVsYSBC YWtvbGxhcmkpCistIEFkZCBzdXBwb3J0IHRvIHJoX3dhaXZlZCBjbWRsaW5lIGJvb3QgcGFyYW1l dGVyIChSaWNhcmRvIFJvYmFpbmEpIFtSSEVMLTI2MTcwXQorLSByZWRoYXQvY29uZmlnczogRGlz YWJsZSBnZnMyIGluIHJoZWwgY29uZmlncyAoQW5kcmV3IFByaWNlKQorLSByZWRoYXQvdWtpX2Fk ZG9ucy92aXJ0OiBhZGQgY29tbW9uIEZJUFMgYWRkb24gKEVtYW51ZWxlIEdpdXNlcHBlIEVzcG9z aXRvKQorLSByZWRoYXQva2VybmVsLnNwZWM6IGFkZCB1a2lfYWRkb25zIHRvIGNyZWF0ZSBVS0kg a2VybmVsIGNtZGxpbmUgYWRkb25zIChFbWFudWVsZSBHaXVzZXBwZSBFc3Bvc2l0bykKKy0gcmhf ZmxhZ3M6IGZpeCBmYWlsZWQgd2hlbiByZWdpc3Rlcl9zeXNjdGxfc3ogcmhfZmxhZ3NfdGFibGUg dG8ga2VybmVsIChSaWNhcmRvIFJvYmFpbmEpIFtSSEVMLTUyNjI5XQorLSByZWRoYXQvZHJhY3V0 LXZpcnQuY29uZjogYWRkIHN5c3RlbWQtdmVyaXR5c2V0dXAgbW9kdWxlIChFbWFudWVsZSBHaXVz ZXBwZSBFc3Bvc2l0bykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfTE9DS19TVEFU IG9uIHRoZSBkZWJ1ZyBrZXJuZWxzIGZvciBhYXJjaDY0IChCcmlhbiBNYXNuZXkpCistIHJlZGhh dC9jb25maWdzOiBlbmFibGUgQ09ORklHX0tFWUJPQVJEX0dQSU9fUE9MTEVEIGZvciBSSEVMIG9u IGFhcmNoNjQgKEx1aXogQ2FwaXR1bGlubykKKy0gcmVkaGF0L2NvbmZpZ3M6IGZlZG9yYTogRW5h YmxlIG5ldyBRdWFsY29tbSBjb25maWdzIChBbmRyZXcgSGFsYW5leSkKKy0gcmVkaGF0L2NvbmZp Z3MvZmVkb3JhOiBzZXQgQ09ORklHX0NSWVBUT19DVVJWRTI1NTE5X1BQQzY0IChEYW4gSG9yw6Fr KQorLSBmZWRvcmE6IFVwZGF0ZXMgZm9yIDYuMTEgbWVyZ2UgKFBldGVyIFJvYmluc29uKQorLSBm ZWRvcmE6IGVuYWJsZSBuZXcgbWlwaSBzZW5zb3JzIGFuZCBkZXZpY2VzIChQZXRlciBSb2JpbnNv bikKKy0gYXJtNjQ6IGVuYWJsZSBDUllQVE9fREVWX1RFR1JBIG9uIFJIRUwgKFBldGVyIFJvYmlu c29uKQorLSByZWRoYXQva2VybmVsLnNwZWM6IGZpeCBmaWxlIGxpc3RlZCB0d2ljZSB3YXJuaW5n IGZvciAia2VybmVsIiBzdWJkaXIgKEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmlnczogRG91 YmxlIE1BWF9MT0NLREVQX0VOVFJJRVMgZm9yIFJUIGRlYnVnIGtlcm5lbHMgKFdhaW1hbiBMb25n KSBbUkhFTC00MzQyNV0KKy0gU3VwcG9ydCB0aGUgZmlyc3QgZGF5IGFmdGVyIGEgcmViYXNlIChE b24gWmlja3VzKQorLSBTdXBwb3J0IDIgZGlnaXQgdmVyc2lvbnMgcHJvcGVybHkgKERvbiBaaWNr dXMpCistIEF1dG9tYXRpb24gY2xlYW51cHMgZm9yIHJlYmFzaW5nIHJ0LWRldmVsIGFuZCBhdXRv bW90aXZlLWRldmVsIChEb24gWmlja3VzKQorLSBmZWRvcmE6IHNldCBDT05GSUdfUkVHVUxBVE9S X1JaRzJMX1ZCQ1RSTCBhcyBhIG1vZHVsZSBmb3IgYXJtNjQgKFBhdHJpY2sgVGFsYmVydCkKKy0g Z2l0bGFiLWNpOiByZXN0b3JlIGJvdCBwaXBlbGluZSBiZWhhdmlvciAoTWljaGFlbCBIb2ZtYW5u KQorLSByZWRoYXQva2VybmVsLnNwZWM6IGRyb3AgZXh0cmEgcmlnaHQgY3VybHkgYnJhY2tldCBp biBrZXJuZWxfa3ZtX3BhY2thZ2UgKEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmlnczogZW5h YmxlIGdwaW9fa2V5cyBkcml2ZXIgZm9yIFJIRUwgb24gYWFyY2g2NCAoTHVpeiBDYXBpdHVsaW5v KQorLSBNb3ZlIE5FVF9WRU5ET1JfTUlDUk9DSElQIGZyb20gY29tbW9uIHRvIHJoZWwgKEp1c3Rp biBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgc29tZSBSVENzIGZvciBSSEVM IG9uIGFhcmNoNjQgKEx1aXogQ2FwaXR1bGlubykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBz b21lIHJlZ3VsYXRvcnMgZm9yIFJIRUwgKEx1aXogQ2FwaXR1bGlubykKKy0gcmVkaGF0L2NvbmZp ZzogZGlzYWJsZSBDWEwgYW5kIENYTEZMQVNIIGRyaXZlcnMgKERhbiBIb3LDoWspCistIEZpeCB1 cCBjb25maWcgbWlzbWF0Y2hlcyBpbiBwZW5kaW5nIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRo YXQvY29uZmlnczogRW5hYmxlIHdhdGNoZG9nIGRldmljZXMgbW9kZWxsZWQgYnkgcWVtdSAoUmlj aGFyZCBXLk0uIEpvbmVzKSBbUkhFTC00MDkzN10KKy0gcmhlbDogY2xlYW51cCB1bnVzZWQgbWVk aWEgdHVuZXIgY29uZmlncyAoUGV0ZXIgUm9iaW5zb24pCistIGFsbDogY2xlYW51cCBNRURJQV9D T05UUk9MTEVSIG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IGtlcm5lbC5zcGVj OiBhZGQgczM5MHggdG8gbGl2ZXBhdGNoaW5nIGtzZWxmdGVzdCBidWlsZHMgKEpvZSBMYXdyZW5j ZSkKKy0gRmxpcCBDT05GSUdfRElNTElCIGJhY2sgdG8gaW5saW5lIChKdXN0aW4gTS4gRm9yYmVz KQorLSBBZGQgdmZpby9udmdyYWNlLWdwdSBkcml2ZXIgQ09ORklHIHRvIFJIRUwtOS41IEFSTTY0 IChEb25hbGQgRHV0aWxlKQorLSBFbmFibGUgQ09ORklHX1JUQ19EUlZfVEVHUkEgZm9yIFJIRUwg KEx1aXogQ2FwaXR1bGlubykKKy0gcmVkaGF0OiByaF9mbGFnczogZGVjbGFyZSBwcm9wZXIgc3Rh dGljIG1ldGhvZHMgd2hlbiAhQ09ORklHX1JIRUxfRElGRkVSRU5DRVMgKFJhZmFlbCBBcXVpbmkp CistIHJlZGhhdDogY29uZmlnczogZW5hYmxlIENPTkZJR19UTVBGU19RVU9UQSBmb3IgYm90aCBG ZWRvcmEgYW5kIFJIRUwgKFJhZmFlbCBBcXVpbmkpCistIEZpeCB1cCBtaXNtYXRjaGVzIGluIHRo ZSA2LjExIG1lcmdlIHdpbmRvdy4gKEp1c3RpbiBNLiBGb3JiZXMpCistIFJlc2V0IENoYW5nZWxv ZyBhZnRlciByZWJhc2UgKEp1c3RpbiBNLiBGb3JiZXMpCistIFJlc2V0IFJIRUxfUkVMRUFTRSBm b3IgdGhlIDYuMTEgY3ljbGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBF bmFibGUgQ09ORklHX1ZNV0FSRV9WTUNJL0NPTkZJR19WTVdBUkVfVk1DSV9WU09DS0VUUyBmb3Ig UkhFTCAoVml0YWx5IEt1em5ldHNvdikKKy0gQ29uc29saWRhdGUgY29uZmlncyB0byBjb21tb24g Zm9yIDYuMTAgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09O RklHX1BUUF8xNTg4X0NMT0NLX01PQ0sgaW4ga2VybmVsLW1vZHVsZXMtaW50ZXJuYWwgKERhdmlk ZSBDYXJhdHRpKQorLSBmZWRvcmE6IGVuYWJsZWQgWEUgR1BVIGRyaXZlcnMgb24gYWxsIGFyY2hl cyAoUGV0ZXIgUm9iaW5zb24pCistIEZsaXAgU05EX1NPQ19DUzM1TDU2X1NQSSBmcm9tIG9mZiB0 byBtb2R1bGUgZm9yIFJIRUwgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZsaXAgRElNTElCIGZyb20g YnVpbHQtaW4gdG8gbW9kdWxlIGZvciBSSEVMIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBbHNvIHJl bW92ZSB0aGUgemZjcGR1bXAgQkFTRV9TTUFMTCBjb25maWcgKEp1c3RpbiBNLiBGb3JiZXMpCist IHJlZGhhdDogQWRkIGNncm91cCBrc2VsZnRlc3RzIHRvIGtlcm5lbC1zZWxmdGVzdHMtaW50ZXJu YWwgKFdhaW1hbiBMb25nKSBbUkhFTC00MzU1Nl0KKy0gUmV2ZXJ0ICJyZWRoYXQvY29uZmlnczog RGlzYWJsZSBDT05GSUdfSU5GSU5JQkFORF9IRkkxIGFuZCBDT05GSUdfSU5GSU5JQkFORF9SRE1B VlQiIChLYW1hbCBIZWliKQorLSBSZW1vdmUgbmV3IGZvciBHSVRMQUJfVE9LRU4gKERvbiBaaWNr dXMpCistIFNldCBGZWRvcmEgY29uZmlncyBmb3IgNi4xMCAoSnVzdGluIE0uIEZvcmJlcykKKy0g RmVkb3JhOiBtaW5vciBkcml2ZXIgdXBkYXRlcyAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9j b25maWdzOiBSZW1vdmUgb2Jzb2xldGUgeDg2IENQVSBtaXRpZ2F0aW9ucyBjb25maWcgZmlsZXMg KFdhaW1hbiBMb25nKQorLSByZWRoYXQvY29uZmlnczogaW5jcmVhc2UgQ09ORklHX0RFRkFVTFRf TU1BUF9NSU5fQUREUiBmcm9tIDMySyB0byA2NEsgZm9yIGFhcmNoNjQgKEJyaWFuIE1hc25leSkK Ky0gcmVkaGF0L2NvbmZpZ3M6IFJlLWVuYWJsZSBDT05GSUdfS0VYRUMgZm9yIEZlZG9yYSAoUGhp bGlwcCBSdWRvKQorLSBkaXNhYmxlIExSX1dQQU4gZm9yIFJIRUwxMCAoQ2hyaXMgdm9uIFJlY2ts aW5naGF1c2VuKSBbUkhFTC00MDI1MV0KKy0gVHVybiBvbiBVU0JfU0VSSUFMX0Y4MTIzMiBmb3Ig RmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvc2NyaXB0cy9maWx0ZXJtb2RzLnB5 OiBzaG93IGFsbCBwYXJlbnQvY2hpbGQga21vZHMgaW4gcmVwb3J0IChKYW4gU3RhbmNlaykKKy0g cmVkaGF0L2tlcm5lbC5zcGVjOiBjYXB0dXJlIGZpbHRlcm1vZHMucHkgcmV0dXJuIGNvZGUgKEph biBTdGFuY2VrKQorLSByZWRoYXQva2VybmVsLnNwZWM6IGZpeCBydW4gb2YgbW9kLWRlbnlsaXN0 IChKYW4gU3RhbmNlaykKKy0gZ2l0bGFiLWNpOiByZW1vdmUgdW51c2VkIFJITUFJTlRBSU5FUlMg dmFyaWFibGUgKE1pY2hhZWwgSG9mbWFubikKKy0gZ2l0bGFiLWNpOiB1c2UgZW52aXJvbm1lbnRz IGZvciBqb2JzIHRoYXQgbmVlZCBhY2Nlc3MgdG8gcHVzaC9naXRsYWIgc2VjcmV0cyAoTWljaGFl bCBIb2ZtYW5uKQorLSBnaXRsYWItY2k6IGRlZmF1bHQgdG8gb3MtYnVpbGQgZm9yIGFsbCBtYWlu dGVuYW5jZSBqb2JzIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogdXNlIHRoZSBjb21t b24gZ2l0IHJlcG8gc2V0dXAgY2tpLWdhdGluZyBhcyB3ZWxsIChNaWNoYWVsIEhvZm1hbm4pCist IGdpdGxhYi1jaTogaGVscCBtYWludGVuYW5jZSBqb2JzIHRvIGNvcGUgd2l0aCBtaXNzaW5nIHBy aXZhdGUga2V5IChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogdXNlIGEgY29tbW9uIGdp dCByZXBvIHNldHVwIGZvciBhbGwgbWFpbnRlbmFuY2Ugam9icyAoTWljaGFlbCBIb2ZtYW5uKQor LSBnaXRsYWItY2k6IG1vdmUgcmVwbyBzZXR1cCBzY3JpcHQgaW50byBzY3JpcHQgdGVtcGxhdGUg aG9sZGVyIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogbW92ZSBtYWludGVuYW5jZSBq b2IgRElTVCB2YXJpYWJsZSBpbnRvIGNvbW1vbiB0ZW1wbGF0ZSAoTWljaGFlbCBIb2ZtYW5uKQor LSBnaXRsYWItY2k6IG1vdmUgbWFpbnRlbmFuY2Ugam9iIHJ1bGVzIGludG8gY29tbW9uIHRlbXBs YXRlIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogbW92ZSBtYWludGVuYW5jZSBqb2Ig cmV0cnkgZmllbGQgaW50byBjb21tb24gdGVtcGxhdGUgKE1pY2hhZWwgSG9mbWFubikKKy0gZ2l0 bGFiLWNpOiBwcm92aWRlIGNvbW1vbiBub24tc2VjcmV0IHNjaGVkdWxlIHRyaWdnZXIgdmFyaWFi bGVzIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogcmVuYW1lIC5zY2hlZHVsZWRfc2V0 dXAgdG8gLmdpdF9zZXR1cCAoTWljaGFlbCBIb2ZtYW5uKQorLSBnaXRsYWItY2k6IG1vdmUgc2Ny aXB0IHNuaXBwZXRzIGludG8gc2VwYXJhdGUgdGVtcGxhdGUgKE1pY2hhZWwgSG9mbWFubikKKy0g Z2l0bGFiLWNpOiByZW5hbWUgbWFpbnRlbmFuY2Ugam9icyAoTWljaGFlbCBIb2ZtYW5uKQorLSBn aXRsYWItY2k6IGludHJvZHVjZSBqb2IgdGVtcGxhdGUgZm9yIG1haW50ZW5hbmNlIGpvYnMgKE1p Y2hhZWwgSG9mbWFubikKKy0gVHVybiBvbiBLQVNBTl9IV19UQUdTIGZvciBGZWRvcmEgYWFyY2g2 NCBkZWJ1ZyBrZXJuZWxzIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGtlcm5lbC5zcGVj OiBhZGQgbWlzc2luZyBzb3VuZC9zb2Mvc29mL3NvZi1hdWRpby5oIHRvIGtlcm5lbC1kZXZlbCBw YWNrYWdlIChKYXJvc2xhdiBLeXNlbGEpCistIHJlZGhhdC9rZXJuZWwuc3BlYzogZml4IGF0dHJp YnV0ZXMgb2Ygc3ltdmVycyBmaWxlIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBhZGQgZmlsdGVy bW9kcyBydWxlIGZvciBpb21tdSB0ZXN0cyAoSmFuIFN0YW5jZWspCistIGZlZG9yYTogYXJtOiBF bmFibGUgYmFzaWMgc3VwcG9ydCBmb3IgUzMyRy1WTlAtUkRCMyBib2FyZCAoRW5yaWMgQmFsbGV0 Ym8gaSBTZXJyYSkKKy0gcmVkaGF0OiBtYWtlIGJueDJ4eCBkcml2ZXJzIHVubWFpbnRhaW5lZCBp biByaGVsLTEwIChKb2huIE1lbmVnaGluaSkgW1JIRUwtMzY2NDYgUkhFTC00MTIzMV0KKy0gcmVk aGF0L2NvbmZpZ3M6IERpc2FibGUgQ09ORklHX05GUCAoS2FtYWwgSGVpYikgW1JIRUwtMzY2NDdd CistIEVuYWJsZSBDT05GSUdfUFdSU0VRX3tTSU1QTElFLEVNTUN9IG9uIGFhcmNoNjQgKENoYXJs ZXMgTWlyYWJpbGUpCistIEZpeCBTRVJJQUxfU0MxNklTN1hYIGNvbmZpZ3MgZm9yIEZlZG9yYSAo SnVzdGluIE0uIEZvcmJlcykKKy0gRW5hYmxlIEFMU0EgKENPTkZJR19TTkQpIG9uIGFhcmNoNjQg KENoYXJsZXMgTWlyYWJpbGUpIFtSSEVMLTQwNDExXQorLSByZWRoYXQ6IFJlbW92ZSBESVNUX0JS QU5DSCB2YXJpYWJsZSAoRWRlciBadWxpYW4pCistIGdpdGxhYi1jaTogbWVyZ2UgYXJrLWxhdGVz dCBiZWZvcmUgdGFnZ2luZyBja2ktZ2F0aW5nIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1j aTogZG8gbm90IG1lcmdlIGFyay1sYXRlc3QgZm9yIGdhdGluZyBwaXBlbGluZXMgZm9yIFJhd2hp ZGUgKE1pY2hhZWwgSG9mbWFubikKKy0gZGlzYWJsZSBDT05GSUdfS1ZNX0lOVEVMX1BST1ZFX1ZF IChQYW9sbyBCb256aW5pKQorLSByZWRoYXQ6IHJlbW92ZSB0aGUgbWVyZ2Ugc3VidHJlZXMgc2Ny aXB0IChEZXJlayBCYXJib3NhKQorLSByZWRoYXQ6IHJoZG9jczogZGVsZXRlIC5nZXRfbWFpbnRh aW5lci5jb25mIChEZXJlayBCYXJib3NhKQorLSByZWRoYXQ6IHJoZG9jczogUmVtb3ZlIHRoZSBy aGRvY3MgZGlyZWN0b3J5IChEZXJlayBCYXJib3NhKQorLSByZWRoYXQvY29uZmlnczogRGlzYWJs ZSBDT05GSUdfUUxBM1hYWCAoS2FtYWwgSGVpYikgW1JIRUwtMzY2NDZdCistIHJlZGhhdC9jb25m aWdzOiBmZWRvcmE6IEVuYWJsZSBzb21lIGRyaXZlcnMgZm9yIElQVTYgc3VwcG9ydCAoSGFucyBk ZSBHb2VkZSkKKy0gcmVkaGF0OiBhZGQgbWlzc2luZyBVS0lfc2VjdXJlYm9vdF9jZXJ0IGh1bmsg KFBhdHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0L2tlcm5lbC5zcGVjOiBrZWVwIGV4dHJhIG1vZHVs ZXMgaW4gb3JpZ2luYWwgZGlyZWN0b3JpZXMgKEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmln czogTW92ZSBDT05GSUdfQkxLX0NHUk9VUF9JT0NPU1Q9eSB0byBjb21tb24vZ2VuZXJpYyAoV2Fp bWFuIExvbmcpCistIFR1cm4gb24gQ09ORklHX01GRF9RQ09NX1BNODAwOCBmb3IgRmVkb3JhIGFh cmNoNjQgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogQnVpbGQgSU1BIENBIGNlcnRpZmlj YXRlIGludG8gdGhlIEZlZG9yYSBrZXJuZWwgKENvaWJ5IFh1KQorLSBNb3ZlIENPTkZJR19SQVNf Rk1QTSB0byB0aGUgcHJvcGVyIGxvY2F0aW9uIChBcmlzdGV1IFJvemFuc2tpKQorLSByZWRoYXQv Y29uZmlnczogUmVtb3ZlIENPTkZJR19ORVRfQUNUX0lQVCAoSXZhbiBWZWNlcmEpCistIGdpdGxh Yi1jaTogYWRkIGtlcm5lbC1hdXRvbW90aXZlIHBpcGVsaW5lcyAoTWljaGFlbCBIb2ZtYW5uKQor LSBFbmFibGUgQ0VDIHN1cHBvcnQgZm9yIFRDMzU4NzQzIChQZXRlciBSb2JpbnNvbikKKy0gZmVk b3JhOiBhcm06IEVuYWJsZSBBUkNIX1I5QTA5RzA1NyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9y YTogdXBkYXRlcyBmb3IgdGhlIDYuMTAga2VybmVsIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3Jh OiBhcm06IEVuYWJsZSB0aGUgTUFYOTY3MDYgR01TTCBtb2R1bGUgKFBldGVyIFJvYmluc29uKQor LSByZWRoYXQ6IFN3aXRjaCBVS0kgdG8gdXNpbmcgaXRzIG93biBTZWN1cmVCb290IGNlcnQgKGZy b20gc3lzdGVtLXNiLWNlcnRzKSAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogQWRkIFJIRUwgc3Bl Y2lmYyAuc2JhdCBzZWN0aW9uIHRvIFVLSSAoSmFuIFN0YW5jZWspCistIGtlcm5lbC5zcGVjOiBh ZGQgaW9tbXUgc2VsZnRlc3RzIHRvIGtlcm5lbC1zZWxmdGVzdHMtaW50ZXJuYWwgKEVkZXIgWnVs aWFuKSBbUkhFTC0zMjg5NV0KKy0gcmVkaGF0L2NvbmZpZ3M6IGZlZG9yYTogYWFyY2g2NDogUmUt ZW5hYmxlIENVU0UgKE5lYWwgR29tcGEpCistIHJlZGhhdDogcGFzcyBjb3JyZWN0IFJQTV9WTUxJ TlVYX0ggdG8gYnBmdG9vbCBpbnN0YWxsIChKYW4gU3RhbmNlaykKKy0gcmhfZmxhZ3M6IFJlbmFt ZSByaF9mZWF0dXJlcyB0byByaF9mbGFncyAoUmljYXJkbyBSb2JhaW5hKSBbUkhFTC0zMjk4N10K Ky0ga2VybmVsOiByaF9mZWF0dXJlczogZml4IHJlYWRpbmcgZW1wdHkgZmVhdHVyZSBsaXN0IGZy b20gL3Byb2MgKFJpY2FyZG8gUm9iYWluYSkgW1JIRUwtMzI5ODddCistIHJoX2ZlYXR1cmVzOiBt b3ZlIHJoX2ZlYXR1cmVzIGVudHJ5IHRvIHN5cy9rZXJuZWwgKFJpY2FyZG8gUm9iYWluYSkgW1JI RUwtMzI5ODddCistIHJoX2ZlYXR1cmVzOiBjb252ZXJ0IHRvIGF0b21pYyBhbGxvY2F0aW9uIChS aWNhcmRvIFJvYmFpbmEpIFtSSEVMLTMyOTg3XQorLSBhZGQgcmhfZmVhdHVyZXMgdG8gL3Byb2Mg KFJpY2FyZG8gUm9iYWluYSkgW1JIRUwtMzI5ODddCistIGFkZCBzdXBwb3J0IGZvciByaF9mZWF0 dXJlcyAoUmljYXJkbyBSb2JhaW5hKSBbUkhFTC0zMjk4N10KKy0gRHJvcCBrZXhlY19sb2FkIHN5 c2NhbGwgc3VwcG9ydCAoQmFvcXVhbiBIZSkKKy0gTmV3IGNvbmZpZ3MgaW4gbGliL2t1bml0IChG ZWRvcmEgS2VybmVsIFRlYW0pCistIFR1cm4gb2ZmIEtVTklUX0ZBVUxUX1RFU1QgYXMgaXQgY2F1 c2VzIHByb2JsZW1zIGZvciBDSSAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRkIGEgY29uZmlnIGVu dHJ5IGluIHBlbmRpbmcgZm9yIENPTkZJR19EUk1fTVNNX1ZBTElEQVRFX1hNTCAoSnVzdGluIE0u IEZvcmJlcykKKy0gRmxpcCBDT05GSUdfU05EX1NPQ19DUzM1TDU2X1NQSSBpbiBwZW5kaW5nIHRv IGF2b2lkIGEgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIEZpeCB1cCBhIG1pc21hdGNo IGZvciBSSEVMIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBjaGFuZ2Vsb2cgYWZ0ZXIgcmVi YXNlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXNldCBSSEVMX1JFTEVBU0UgdG8gMCBmb3IgNi4x MCAoSnVzdGluIE0uIEZvcmJlcykKKy0gY29uZmlnczogbW92ZSBDT05GSUdfQkxLX0RFVl9VQkxL IGludG8gcmhlbC9jb25maWdzL2dlbmVyaWMgKE1pbmcgTGVpKQorLSBjb25maWdzOiBtb3ZlIENP TkZJR19CTEtfU0VEX09QQUwgaW50byByZWRoYXQvY29uZmlncy9jb21tb24vZ2VuZXJpYyAoTWlu ZyBMZWkpCistIFJIRUwtMjEwOTc6IHJoZWw6IGFhcmNoNjQgc3RvcCBibG9ja2luZyBhIG51bWJl ciBvZiBIVyBzZW5zb3JzIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJs ZSBSVEw4ODIyQlUgZm9yIHJoZWwgKEpvc2UgSWduYWNpbyBUb3Jub3MgTWFydGluZXopCistIHJl ZGhhdC9jb25maWdzOiByZW1vdmUgQ09ORklHX0RNQV9QRVJOVU1BX0NNQSBhbmQgc3dpdGNoIENP TkZJR19ETUFfTlVNQV9DTUEgb2ZmIChKZXJyeSBTbml0c2VsYWFyKQorLSByZWRoYXQ6IGFkZCBJ TUEgY2VydGlmaWNhdGVzIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0L2tlcm5lbC5zcGVjOiBmaXgg dHlwbyBpbiBtb3ZlX2ttb2RfbGlzdCgpIHZhcmlhYmxlIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0 OiBtYWtlIGZpbHRlcm1vZHMucHkgbGVzcyB2ZXJib3NlIGJ5IGRlZmF1bHQgKEphbiBTdGFuY2Vr KQorLSBzY3NpOiBzZDogY29uZGl0aW9uIHByb2JlX3R5cGUgdW5kZXIgUkhFTF9ESUZGRVJFTkNF UyAoRXJpYyBDaGFudWRldCkKKy0gVHVybiBvbiBJTklUX09OX0FMTE9DX0RFRkFVTFRfT04gZm9y IEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gQ29uc29saWRhdGUgY29uZmlncyB0byBjb21t b24gZm9yIDYuOSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L3JoZWxfZmlsZXM6IG1vdmUg dGlwYy5rbyBhbmQgdGlwY19kaWFnLmtvIHRvIG1vZHVsZXMtZXh0cmEgKFhpbiBMb25nKSBbUkhF TC0yMzkzMV0KKy0gcmVkaGF0OiBtb3ZlIGFtZC1wc3RhdGUtdXQua28gdG8gbW9kdWxlcy1pbnRl cm5hbCAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09ORklHX0xFRFNf VFJJR0dFUl9ORVRERVYgYWxzbyBmb3IgUkhFTCAoTWljaGFsIFNjaG1pZHQpIFtSSEVMLTMyMTEw XQorLSByZWRoYXQvY29uZmlnczogUmVtb3ZlIENPTkZJR19BTURfSU9NTVVfVjIgKEplcnJ5IFNu aXRzZWxhYXIpCistIFNldCBERUJVR19JTkZPX0JURl9NT0RVTEVTIGZvciBGZWRvcmEgKEp1c3Rp biBNLiBGb3JiZXMpCistIHJlZGhhdDogVXNlIHJlZGhhdHNlY3VyZWJvb3Q3MDEgZm9yIHBwYzY0 bGUgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IHN3aXRjaCB0aGUga2VybmVsIHBhY2thZ2UgdG8g dXNlIGNlcnRzIGZyb20gc3lzdGVtLXNiLWNlcnRzIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBy ZXBsYWNlIHJlZGhhdHNlY3VyZWJvb3QzMDMgc2lnbmluZyBrZXkgd2l0aCByZWRoYXRzZWN1cmVi b290NjAxIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBkcm9wIGNlcnRpZmljYXRlcyB0aGF0IHdl cmUgZGVwcmVjYXRlZCBhZnRlciBHUlVCJ3MgQm9vdEhvbGUgZmxhdyAoSmFuIFN0YW5jZWspCist IHJlZGhhdDogY29ycmVjdCBmaWxlIG5hbWUgb2YgcmVkaGF0c2VjdXJlYm9vdGNhMSAoSmFuIFN0 YW5jZWspCistIHJlZGhhdDogYWxpZ24gZmlsZSBuYW1lcyB3aXRoIG5hbWVzIG9mIHNpZ25pbmcg a2V5cyBmb3IgcHBjIGFuZCBzMzkwIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVu YWJsZSBDT05GSUdfRE1fVkRPIGluIFJIRUwgKEJlbmphbWluIE1hcnppbnNraSkKKy0gcmVkaGF0 L2NvbmZpZ3M6IEVuYWJsZSBEUk1fTk9VVkVBVV9HU1BfREVGQVVMVCBldmVyeXdoZXJlIChOZWFs IEdvbXBhKQorLSBrZXJuZWwuc3BlYzogYWRqdXN0IGZvciBsaXZlcGF0Y2hpbmcga3NlbGZ0ZXN0 cyAoSm9lIExhd3JlbmNlKQorLSByZWRoYXQvY29uZmlnczogcmVtb3ZlIENPTkZJR19URVNUX0xJ VkVQQVRDSCAoSm9lIExhd3JlbmNlKQorLSBUdXJuIG9uIENPTkZJR19SQU5ET01fS01BTExPQ19D QUNIRVMgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gU2V0IEZlZG9yYSBjb25maWdz IGZvciA2LjkgKEp1c3RpbiBNLiBGb3JiZXMpCistIGdpdGxhYi1jaTogZW5hYmxlIHBpcGVsaW5l cyB3aXRoIGMxMHMgYnVpbGRyb290IChNaWNoYWVsIEhvZm1hbm4pCistIFR1cm4gb24gSVNNIGZv ciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09O RklHX1RFU1RfTE9DS1VQIGZvciBub24tZGVidWcga2VybmVscyAoxIxlc3Rtw61yIEthbGluYSkK Ky0gcmVkaGF0L3JoZWxfZmlsZXM6IGFkZCB0ZXN0X2xvY2t1cC5rbyB0byBtb2R1bGVzLWV4dHJh ICjEjGVzdG3DrXIgS2FsaW5hKQorLSBUdXJuIG9mZiBzb21lIEZlZG9yYSBVQlNBTiBvcHRpb25z IHRvIGF2b2lkIGZhbHNlIHBvc2l0aXZlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gZmVkb3JhOiBh YXJjaDY0OiBFbmFibGUgYSBRQ29tIFJvYm90aWNzIHBsYXRmb3JtcyByZXF1aXJlbWVudHMgKFBl dGVyIFJvYmluc29uKQorLSBmZWRvcmE6IHVwZGF0ZXMgZm9yIDYuOSBtZXJnZSB3aW5kb3cgKFBl dGVyIFJvYmluc29uKQorLSBnaXRsYWItY2k6IHJlbmFtZSBHaXRMYWIgam9icyBhcmsgLT4gcmF3 aGlkZSAoTWljaGFlbCBIb2ZtYW5uKQorLSBnaXRsYWItY2k6IGhhcm1vbml6ZSBEYXRhV2FyZWhv dXNlIHRyZWUgbmFtZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJs ZSBDT05GSUdfSU5URUxfSU9NTVVfU0NBTEFCTEVfTU9ERV9ERUZBVUxUX09OIGZvciByaGVsIChK ZXJyeSBTbml0c2VsYWFyKQorLSBzcGVjOiBtYWtlIHN1cmUgcG9zdHRyYW5zIHNjcmlwdCBkb2Vz bid0IGZhaWwgaWYgL2Jvb3QgaXMgbm9uLVBPU0lYIChnbGIpCistIFR1cm4gb24gVUJTQU4gZm9y IEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBYRU5fQkFMTE9PTl9NRU1PUllf SE9UUExVRyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBkb2NzOiBwb2ludCBvdXQg dGhhdCBweXRob24zLXB5eWFtbCBpcyBub3cgcmVxdWlyZWQgKFRob3JzdGVuIExlZW1odWlzKQor LSBVc2UgTExWTT0xIGZvciBjbGFuZ19sdG8gYnVpbGQgKE5pa2l0YSBQb3BvdikKKy0gcmVkaGF0 OiBmaXggZGVmX3ZhcmlhbnRzLnlhbWwgY2hlY2sgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IHNh bml0eSBjaGVjayB5YW1sIGZpbGVzIChKYW4gU3RhbmNlaykKKy0gc3BlYzogcmV3b3JrIGZpbHRl ci1tb2RzIGFuZCBtb2QtZGVueWxpc3QgKEphbiBTdGFuY2VrKQorLSByZWRoYXQvY29uZmlnczog cmVtb3ZlIENPTkZJR19JTlRFTF9NRU5MT1cgYXMgaXQgaXMgb2Jzb2xldGUuIChEYXZpZCBBcmNh cmkpCistIGFyY2gveDg2OiBGaXggWFNBVkUgY2hlY2sgZm9yIHg4Nl82NC12MiBjaGVjayAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGUudmFyaWFibGVzOiB1bnF1b3RlIGEgdmFy aWFibGUgKFRob3JzdGVuIExlZW1odWlzKQorLSByZWRoYXQvY29uZmlnczogYnVpbGQgaW4gVGVn cmEyMTAgU1BJIGRyaXZlciAoTWFyayBTYWx0ZXIpCistIHJlZGhhdC9jb25maWdzOiBhYXJjaDY0 OiBFbmFibGUgQVJNX0ZGQSBkcml2ZXIgKE1hcmsgU2FsdGVyKQorLSBCYXNlIGF1dG9tb3RpdmUt ZGV2ZWwgb24gcnQtZGV2ZWwgKERvbiBaaWNrdXMpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUg Q09ORklHX0FNRFRFRSBmb3IgeDg2IChEYXZpZCBBcmNhcmkpCistIHJlZGhhdC9jb25maWdzOiBl bmFibGUgQ09ORklHX1RFU1RfTE9DS1VQIGZvciBkZWJ1ZyBrZXJuZWwgKMSMZXN0bcOtciBLYWxp bmEpCistIGtlcm5lbC5zcGVjOiBmaXggbGlicGVyZi1kZWJ1Z2luZm8gY29udGVudCAoSmFuIFN0 YW5jZWspCistIFR1cm4gb24gRE1fVkRPIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCist IHJlZGhhdDogbWFrZSBsaWJwZXJmLWRldmVsIHJlcXVpcmUgbGlicGVyZiAlJXt2ZXJzaW9ufS0l JXtyZWxlYXNlfSAoSmFuIFN0YW5jZWspCistIGtlcm5lbC5zcGVjOiBkcm9wIGN1c3RvbSBtb2Rl IGFsc28gZm9yIFN5c3RlbS5tYXAgZ2hvc3QgZW50cnkgKEphbiBTdGFuY2VrKQorLSBPY3RvcHVz IG1lcmdlcyBhcmUgdG9vIGNvbnNlcnZhdGl2ZSwgc2VyaWFsaXplIGluc3RlYWQgKERvbiBaaWNr dXMpCistIEFkZCB0cmFja2luZyBicmFuY2hlcyBmb3IgcnQtZGV2ZWwgKERvbiBaaWNrdXMpCist IGFsbDogY2xlYW4tdXAgaTkxNSAoUGV0ZXIgUm9iaW5zb24pCistIFR1cm4gb24gQ09ORklHX1JF QURfT05MWV9USFBfRk9SX0ZTIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhh dC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogZml4IHJ0b25seSBidWlsZCAoSmFuIFN0YW5jZWspCist IHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogYWRkIGV4dHJhIGZsYWdzIGZvciB0b29scyBi dWlsZCAoU2NvdHQgV2VhdmVyKQorLSBBZGQgaWlvLXRlc3QtZ3RzIHRvIG1vZC1pbnRlcm5hbC5s aXN0IChUaG9yc3RlbiBMZWVtaHVpcykKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiB1 cGRhdGUgbGljZW5zZSAoU2NvdHQgV2VhdmVyKQorLSBGaXggdHlwbyBpbiBtYWludGFpbmluZy5y c3QgZmlsZSAoQXVndXN0byBDYXJpbmdpKQorLSBFbmFibGUgRFJNX0NETlNfRFNJX0o3MjFFIGZv ciBmZWRvcmEgKEFuZHJldyBIYWxhbmV5KQorLSBnaXRsYWItY2k6IGRvIG5vdCBtZXJnZSBhcmst bGF0ZXN0IGZvciBnYXRpbmcgcGlwZWxpbmVzIChNaWNoYWVsIEhvZm1hbm4pCistIGZlZG9yYTog RW5hYmxlIE1DUDk2MDAgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxl ICYgY29uc29saWRhdGUgQkYtMyBkcml2ZXJzIGNvbmZpZyAoTHVpeiBDYXBpdHVsaW5vKQorLSBy ZWRoYXQ6IEZpeCBSVCBrZXJuZWwga3ZtIHN1YnBhY2thZ2UgcmVxdWlyZXMgKEp1cmkgTGVsbGkp CistIEFkZCBuZXcgb2ZfdGVzdCBtb2R1bGUgdG8gbW9kLWludGVybmFsLmxpc3QgKFRob3JzdGVu IExlZW1odWlzKQorLSBBZGQgbmV3IHN0cmluZyBrdW5pdCBtb2R1bGVzIHRvIG1vZC1pbnRlcm5h bC5saXN0IChUaG9yc3RlbiBMZWVtaHVpcykKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRl OiBlbmFibGUgY3Jvc3MgZm9yIGJhc2UvUlQgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQva2Vy bmVsLnNwZWMudGVtcGxhdGU6IEZpeCBjcm9zcyBjb21waWxpbmcgKFBldGVyIFJvYmluc29uKQor LSBhcmNoL3g4Ni9rZXJuZWwvc2V0dXAuYzogZml4dXAgcmhfY2hlY2tfc3VwcG9ydGVkIChTY290 dCBXZWF2ZXIpCistIEVuYWJsZSBDT05GSUdfVVNCX09OQk9BUkRfSFVCIGZvciBSSEVMIChDaGFy bGVzIE1pcmFiaWxlKQorLSByZWRoYXQvTWFrZWZpbGUuY3Jvc3M6IEFkZCBDUk9TU19CQVNFT05M WSAoUHJhcml0IEJoYXJnYXZhKQorLSBnaXRsYWItY2k6IGZpeCBhcmstbGF0ZXN0IG1lcmdpbmcg Zm9yIHBhcmVudCBwaXBlbGluZXMgcnVubmluZyBpbiBmb3JrcyAoTWljaGFlbCBIb2ZtYW5uKQor LSBsc206IHVwZGF0ZSBzZWN1cml0eV9sb2NrX2tlcm5lbF9kb3duIChTY290dCBXZWF2ZXIpCist IEZpeCBjaGFuZ2Vsb2cgYWZ0ZXIgcmViYXNlIChBdWd1c3RvIENhcmluZ2kpCistIHJlZGhhdDog cmVtb3ZlICJFTkQgT0YgQ0hBTkdFTE9HIiBtYXJrZXIgZnJvbSBrZXJuZWwuY2hhbmdlbG9nIChI ZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gZ2l0bGFiLWNpOiBlbmFibGUgYWxsIHZhcmlhbnRzIGZv ciByYXdoaWRlL2VsbiBidWlsZGVyIGltYWdlIGdhdGluZyAoTWljaGFlbCBIb2ZtYW5uKQorLSBG ZWRvcmE6IGVuYWJsZSBNaWNyb2NoaXAgYW5kIHRoZWlyIHVzZWZ1bCBkcml2ZXJzIChQZXRlciBS b2JpbnNvbikKKy0gc3BlYzogc3VwcHJlc3MgInNldCAreCIgb3V0cHV0IChKYW4gU3RhbmNlaykK Ky0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgQ09ORklHX1JETUFfU0lXIChLYW1hbCBIZWliKQor LSByZWRoYXQvY29uZmlnczogRGlzYWJsZSBDT05GSUdfUkRNQV9SWEUgKEthbWFsIEhlaWIpCist IHJlZGhhdC9jb25maWdzOiBEaXNhYmxlIENPTkZJR19NTFg0IChLYW1hbCBIZWliKQorLSByZWRo YXQvY29uZmlnczogRGlzYWJsZSBDT05GSUdfSU5GSU5JQkFORF9IRkkxIGFuZCBDT05GSUdfSU5G SU5JQkFORF9SRE1BVlQgKEthbWFsIEhlaWIpCistIENvbnNvbGlkYXRlIDYuOCBjb25maWdzIHRv IGNvbW1vbiAoSnVzdGluIE0uIEZvcmJlcykKKy0gUmVtb3ZlIHJ0LWF1dG9tYXRlZCBhbmQgbWFz dGVyLXJ0LWRldmVsIGxvZ2ljIChEb24gWmlja3VzKQorLSBBZGQgc3VwcG9ydCBmb3IgQ0kgb2N0 b3B1cyBtZXJnaW5nIChEb24gWmlja3VzKQorLSByZWRoYXQvY29uZmlnczogRGlzYWJsZSBDT05G SUdfSU5GSU5JQkFORF9WTVdBUkVfUFZSRE1BIChLYW1hbCBIZWliKQorLSBnaXRsYWItY2k6IGZp eCBtZXJnZSB0cmVlIFVSTCBmb3IgZ2F0aW5nIHBpcGVsaW5lcyAoTWljaGFlbCBIb2ZtYW5uKQor LSBSZXZlcnQgIm5ldDogYnVtcCBDT05GSUdfTUFYX1NLQl9GUkFHUyB0byA0NSIgKE1hcmNlbG8g UmljYXJkbyBMZWl0bmVyKQorLSB1a2k6IHVzZSBzeXN0ZW1kLXBjcnBoYXNlIGRyYWN1dCBtb2R1 bGUgKEdlcmQgSG9mZm1hbm4pCistIEFkZCBsaWJwZXJmLWRlYnVnaW5mbyBzdWJwYWNrYWdlIChK dXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IEFkZCBsb2df bXNnIG1hY3JvIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzOiBEaXNhYmxlIENP TkZJR19JTkZJTklCQU5EX1VTTklDIChLYW1hbCBIZWliKQorLSBFbmFibGUgQ09ORklHX0JNSTMy M19JMkM9bSBmb3IgRmVkb3JhIHg4Nl82NCBidWlsZHMgKEhhbnMgZGUgR29lZGUpCistIGdpdGxh Yi1jaTogZHJvcCB0ZXN0X21ha2VmaWxlIGpvYiAoU2NvdHQgV2VhdmVyKQorLSBFbmFibGUgbWVy Z2UtcnQgcGlwZWxpbmUgKERvbiBaaWNrdXMpCistIGtlcm5lbC5zcGVjOiBpbmNsdWRlIHRoZSBH REIgcGx1Z2luIGluIGtlcm5lbC1kZWJ1Z2luZm8gKE9uZHJlaiBNb3NuYWNlaykKKy0gVHVybiBv biBEUk1fTk9VVkVBVV9HU1BfREVGQVVMVCBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQor LSBTZXQgbGF0ZSBuZXcgY29uZmlnIEhEQzMwMjAgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJl cykKKy0gcmVkaGF0L3NlbGYtdGVzdDogVXBkYXRlIENST1NTX0RJU0FCTEVEX1BBQ0tBR0VTIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogRG8gbm90IGJ1aWxkIGxpYnBlcmYgd2l0aCBjcm9z cyBidWlsZHMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05G SUdfUElOQ1RSTF9JTlRFTF9QTEFURk9STSBmb3IgUkhFTCAoRGF2aWQgQXJjYXJpKQorLSByZWRo YXQvY29uZmlnczogZW5hYmxlIENPTkZJR19QSU5DVFJMX01FVEVPUlBPSU5UIGZvciBSSEVMIChE YXZpZCBBcmNhcmkpCistIHJlZGhhdC9jb25maWdzOiBpbnRlbCBwaW5jdHJsIGNvbmZpZyBjbGVh bnVwIChEYXZpZCBBcmNhcmkpCistIHJlZGhhdC9jb25maWdzOiBGb3IgYWFyY2g2NC9SVCwgZGVm YXVsdCBrc3RhY2sgcmFuZG9taXphdGlvbiBvZmYgKEplcmVteSBMaW50b24pCistIHJlZGhhdC9N YWtlZmlsZTogcmVtb3ZlIGFuIHVudXNlZCB0YXJnZXQgKE9uZHJlaiBNb3NuYWNlaykKKy0gcmVk aGF0L01ha2VmaWxlOiBmaXggc2V0dXAtc291cmNlIGFuZCBkb2N1bWVudCBpdHMgY2F2ZWF0IChP bmRyZWogTW9zbmFjZWspCistIHJlZGhhdC9NYWtlZmlsZTogZml4IHJhY2UgY29uZGl0aW9uIHdo ZW4gbWFraW5nIHRoZSBLQUJJIHRhcmJhbGwgKE9uZHJlaiBNb3NuYWNlaykKKy0gcmVkaGF0L01h a2VmaWxlOiByZWZhY3RvciBLQUJJIHRhcmJhbGwgY3JlYXRpb24gKE9uZHJlaiBNb3NuYWNlaykK Ky0gVHVybiBYRlNfU1VQUE9SVF9WNCBiYWNrIG9uIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIEFkZCB4ZSB0byBkcm0gbW9kdWxlIGZpbHRlcnMgKEp1c3RpbiBNLiBGb3JiZXMpCist IFR1cm4gb2ZmIHRoZSBEUk1fWEVfS1VOSVRfVEVTVCBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9y YmVzKQorLSBGbGlwIHNlY3VyZWJvb3Qgc2lnbmF0dXJlIG9yZGVyIChKdXN0aW4gTS4gRm9yYmVz KQorLSBhbGw6IGNsZWFuIHVwIHNvbWUgcmVtb3ZlZCBjb25maWdzIChQZXRlciBSb2JpbnNvbikK Ky0gcmVkaGF0OiBhZGQgbnZpZGlhIG9vdCBzaWduaW5nIGtleSAoRGF2ZSBBaXJsaWUpCistIGdp dGxhYi1jaTogc3VwcG9ydCBDSSBmb3IgemZjcGR1bXAga2VybmVsIG9uIEVMTiAoTWljaGFlbCBI b2ZtYW5uKQorLSBGZWRvcmEgY29uZmlncyBmb3IgNi44IChKdXN0aW4gTS4gRm9yYmVzKQorLSBU dXJuIG9mZiBDT05GSUdfSU5URUxfVlNDIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCist IHJlZGhhdC9jb25maWdzOiByaGVsIHdpcmVsZXNzIHJlcXVlc3RzIChKb3NlIElnbmFjaW8gVG9y bm9zIE1hcnRpbmV6KQorLSBzcGVjOiBTZXQgRVhUUkFfQ1hYRkxBR1MgZm9yIHBlcmYgZGVtYW5n bGUtY3h4Lm8gKEpvc2ggU3RvbmUpIFsyMjMzMjY5XQorLSBGbGlwIHZhbHVlcyBmb3IgRlNDQUNI RSBhbmQgTkVURlNfU1VQUE9SVCB0byBhdm9pZCBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gVHVybiBvbiBTRUNVUklUWV9ETUVTR19SRVNUUklDVCAoSnVzdGluIE0uIEZvcmJlcykKKy0g cmVkaGF0OiBmb3J3YXJkLXBvcnQgZ2VubG9nLnB5IHVwZGF0ZXMgZnJvbSBjOXMgKEphbiBTdGFu Y2VrKQorLSBhcmNoL3g4NjogbWFyayB4ODZfNjQtdjEgYW5kIHg4Nl82NC12MiBwcm9jZXNzb3Jz IGFzIGRlcHJlY2F0ZWQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gZmVkb3JhOiBFbmFibGUgbW9yZSBS ZW5lc2FzIFJaIHBsYXRmb3JtIGRyaXZlcnMgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGEg ZmV3IGFhcmNoNjQgZHJpdmVycyBhbmQgY2xlYW51cHMgKFBldGVyIFJvYmluc29uKQorLSBmZWRv cmE6IGNhdml1bSBuaXRyb3ggY25uNTV4eCAoUGV0ZXIgUm9iaW5zb24pCistIEZpeCBkaXN0LWdl dC1idWlsZHJlcXMgYnJlYWthZ2UgYXJvdW5kIHBlcmwoRXh0VXRpbHM6OkVtYmVkKSAoRG9uIFpp Y2t1cykKKy0gZ2l0bGFiLWNpOiBtZXJnZSBhcmstbGF0ZXN0IGZpeGVzIHdoZW4gcnVubmluZyBF TE4gcGlwZWxpbmVzIChNaWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogdXNlIGFsbCBhcmNo ZXMgZm9yIGNvbnRhaW5lciBpbWFnZSBnYXRpbmcgKE1pY2hhZWwgSG9mbWFubikKKy0gQWRkIG5l dyBvcy1idWlsZCB0YXJnZXRzOiBydC1kZXZlbCBhbmQgYXV0b21vdGl2ZS1kZXZlbCAoRG9uIFpp Y2t1cykKKy0gUmVtb3ZlIGRlZmluZXMgZm9yY2luZyB0b29scyBvbiwgdGhleSBvdmVycmlkZSBj bWRsaW5lIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZW1vdmUgc2VwYXJhdGUgbGljZW5zZSB0YWcg Zm9yIGxpYnBlcmYgKEp1c3RpbiBNLiBGb3JiZXMpCistIERvbid0IHVzZSB1cHN0cmVhbSBicGZ0 b29sIHZlcnNpb24gZm9yIEZlZG9yYSBwYWNrYWdlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBEb24n dCBzaGlwIGxpYnBlcmYuYSBpbiBsaWJwZXJmLWRldmVsIChKdXN0aW4gTS4gRm9yYmVzKQorLSBh ZGQgbGlicGVyZiBwYWNrYWdlcyBhbmQgZW5hYmxlIHBlcmYsIGxpYnBlcmYsIHRvb2xzIGFuZCBi cGZ0b29sIHBhY2thZ2VzIChUaG9yc3RlbiBMZWVtaHVpcykKKy0gQWRkIHNjYWZmb2xkaW5nIHRv IGJ1aWxkIHRoZSBrZXJuZWwtaGVhZGVycyBwYWNrYWdlIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBG b3JiZXMpCistIHJlZGhhdC9zcGVjOiB1c2UgZGlzdHJvIENGTEFHUyB3aGVuIGJ1aWxkaW5nIGJv b3RzdHJhcCBicGZ0b29sIChBcnRlbSBTYXZrb3YpCistIHNwZWM6IHVzZSBqdXN0LWJ1aWx0IGJw ZnRvb2wgZm9yIHZtbGludXguaCBnZW5lcmF0aW9uIChZYXVoZW5pIEthbGl1dGEpIFsyMTIwOTY4 XQorLSBnaXRsYWItY2k6IGVuYWJsZSBuYXRpdmUgdG9vbHMgZm9yIFJhd2hpZGUgQ0kgKE1pY2hh ZWwgSG9mbWFubikKKy0gUmV2ZXJ0ICJNZXJnZSBicmFuY2ggJ2ZpeC1rYWJpLWJ1aWxkLXJhY2Un IGludG8gJ29zLWJ1aWxkJyIgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogY29uZmlnczog ZmVkb3JhOiBFbmFibGUgc2lpOTAyeCBicmlkZ2UgY2hpcCBkcml2ZXIgKEVyaWNvIE51bmVzKQor LSBFbmFibGUgQ09ORklHX1RDUF9DT05HX0lMTElOT0lTIGZvciBSSEVMIChEYXZpZGUgQ2FyYXR0 aSkKKy0gcmVkaGF0L01ha2VmaWxlOiBmaXggc2V0dXAtc291cmNlIGFuZCBkb2N1bWVudCBpdHMg Y2F2ZWF0IChPbmRyZWogTW9zbmFjZWspCistIHJlZGhhdC9NYWtlZmlsZTogZml4IHJhY2UgY29u ZGl0aW9uIHdoZW4gbWFraW5nIHRoZSBLQUJJIHRhcmJhbGwgKE9uZHJlaiBNb3NuYWNlaykKKy0g cmVkaGF0L01ha2VmaWxlOiByZWZhY3RvciBLQUJJIHRhcmJhbGwgY3JlYXRpb24gKE9uZHJlaiBN b3NuYWNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6IFJlbW92ZSBIT1RQTFVHX0NQVTAgY29uZmlncyAo UHJhcml0IEJoYXJnYXZhKQorLSBnaXRsYWItY2k6IG1lcmdlIGFyay1sYXRlc3QgYmVmb3JlIGJ1 aWxkaW5nIGluIE1SIHBpcGVsaW5lcyAoTWljaGFlbCBIb2ZtYW5uKQorLSBDSTogaW5jbHVkZSBh YXJjaDY0IGluIENLSSBjb250YWluZXIgaW1hZ2UgZ2F0aW5nIChUYWxlcyBBcGFyZWNpZGEpCist IHJlZGhhdDogc3BlYzogRml4IHVwZGF0ZV9zY3JpcHRzIHJ1biBmb3IgQ2VudE9TIGJ1aWxkcyAo TmVhbCBHb21wYSkKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9jcnlwdG8gKEZlZG9yYSBLZXJu ZWwgVGVhbSkKKy0gbmV0OiBidW1wIENPTkZJR19NQVhfU0tCX0ZSQUdTIHRvIDQ1IChNYXJjZWxv IFJpY2FyZG8gTGVpdG5lcikKKy0gRW5hYmxlIENPTkZJR19NQVJWRUxMXzg4UTJYWFhfUEhZIChJ emFiZWxhIEJha29sbGFyaSkKKy0gUmVtb3ZlIENPTkZJR19ORVRfRU1BVENIX1NUQUNLIGZpbGUg Zm9yIFJIRUwgKEp1c3RpbiBNLiBGb3JiZXMpCistIENPTkZJR19ORVRGU19TVVBQT1JUIHNob3Vs ZCBiZSBtIGFmdGVyIHRoZSBtZXJnZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBGU0NBQ0hF IGFuZCBORVRGUyBmcm9tIG0gdG8geSBpbiBwZW5kaW5nIChKdXN0aW4gTS4gRm9yYmVzKQorLSBU dXJuIG9uIENPTkZJR19UQ1BfQU8gZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVy biBvbiBJQUFfQ1JZUFRPX1NUQVRTIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIGZl ZG9yYTogbmV3IGRyaXZlcnMgYW5kIGNsZWFudXBzIChQZXRlciBSb2JpbnNvbikKKy0gVHVybiBv biBSZW5lc2FzIFJaIGZvciBGZWRvcmEgSU9UIHJoYnoyMjU3OTEzIChKdXN0aW4gTS4gRm9yYmVz KQorLSByZWRoYXQ6IGZpbHRlci1tb2R1bGVzLnNoLnJoZWw6IGFkZCBkZWxsLXNtbS1od21vbiAo U2NvdHQgV2VhdmVyKQorLSBBZGQgQ09ORklHX0lOVEVMX01FSV9HU0NfUFJPWFk9bSBmb3IgRFJN IDkuNCBzdGFibGUgYmFja3BvcnQgKE1pa2EgUGVudHRpbMOkKQorLSBTZXQgY29uZmlncyBmb3Ig WlJBTV9UUkFDS19FTlRSWV9BQ1RJTUUgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBweXRob24z LXB5eWFtbCB0byBidWlsZHJlcXMgZm9yIGtlcm5lbC1kb2NzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBBZGQgbmI3dnBxOTA0bSB0byBzaW5nbGVtb2RzIGZvciBwcGM2NGxlIChUaG9yc3RlbiBMZWVt aHVpcykKKy0gaW5jbHVkZSBkcm0gYnJpZGdlIGhlbHBlcnMgaW4ga2VybmVsLWNvcmUgcGFja2Fn ZSAoVGhvcnN0ZW4gTGVlbWh1aXMpCistIEFkZCBkZWxsLXNtbS1od21vbiB0byBzaW5nbGVtb2Rz IChUaG9yc3RlbiBMZWVtaHVpcykKKy0gQWRkIGRybV9nZW1fc2htZW1fdGVzdCB0byBtb2QtaW50 ZXJuYWwubGlzdCAoVGhvcnN0ZW4gTGVlbWh1aXMpCistIHJlZGhhdDoga0FCSTogYWRkIG1pc3Np bmcgUkhfS0FCSV9TSVpFX0FMSUdOX0NIRUNLUyBLY29uZmlnIG9wdGlvbiAoU2FicmluYSBEdWJy b2NhKQorLSByZWRoYXQ6IHJoX2thYmk6IGludHJvZHVjZSBSSF9LQUJJX0VYQ0xVREVfV0lUSF9T SVpFIChTYWJyaW5hIER1YnJvY2EpCistIHJlZGhhdDogcmhfa2FiaTogbW92ZSBzZW1pY29sb24g aW5zaWRlIF9fUkhfS0FCSV9DSEVDS19TSVpFIChTYWJyaW5hIER1YnJvY2EpCistIEZpeCB1cCBa UkFNX1RSQUNLX0VOVFJZX0FDVElNRSBpbiBwZW5kaW5nIChKdXN0aW4gTS4gRm9yYmVzKQorLSBy YW5kb206IHJlcGxhY2UgaW1wb3J0X3NpbmdsZV9yYW5nZSgpIHdpdGggaW1wb3J0X3VidWYoKSAo SnVzdGluIE0uIEZvcmJlcykKKy0gRmxpcCBDT05GSUdfSU5URUxfUE1DX0NPUkUgdG8gbSBmb3Ig RmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgQ09ORklHX1pSQU1fVFJBQ0tfRU5UUllf QUNUSU1FPXkgdG8gYXZvaWQgYSBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0gY29tbW9u OiBjbGVhbnVwIE1YM19JUFUgKFBldGVyIFJvYmluc29uKQorLSBhbGw6IFRoZSBPY3Rlb24gTURJ TyBkcml2ZXIgaXMgYWFyY2g2NC9taXBzIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBydGM6 IHJlbW92ZSBicTQ4MDIgY29uZmlnIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBkZS1kdXBl IE1BUlZFTExfR1RJX1dEVCAoUGV0ZXIgUm9iaW5zb24pCistIGFsbDogUmVtb3ZlIENBTl9CWENB TiAoUGV0ZXIgUm9iaW5zb24pCistIGNvbW1vbjogY2xlYW51cCBTTkRfU09DX1JPQ0tDSElQIChQ ZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBtb3ZlIFJIRUwgRFA4Mzg2N19QSFkgdG8gY29tbW9u IChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBNYWtlIEFTWU1NRVRSSUNfS0VZX1RZUEUgZW5h YmxlIGV4cGxpY2l0IChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBEaXNhYmxlIGFhcmNoNjQg QVJDSF9NQTM1IHVuaXZlcnNhbGx5IChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBhcm02NDog ZW5hYmxlIFRlZ3JhMjM0IHBpbmN0cmwgZHJpdmVyIChQZXRlciBSb2JpbnNvbikKKy0gcmhlbDog YXJtNjQ6IEVuYWJsZSBxb3JpcSB0aGVybWFsIGRyaXZlciAoUGV0ZXIgUm9iaW5zb24pCistIGNv bW1vbjogYWFyY2g2NDogQ2xlYW51cCBzb21lIGkuTVg4IGNvbmZpZyBvcHRpb25zIChQZXRlciBS b2JpbnNvbikKKy0gYWxsOiBFRVBST01fTEVHQUNZIGhhcyBiZWVuIHJlbW92ZWQgKFBldGVyIFJv Ymluc29uKQorLSBhbGw6IHJtZW92ZSBBcHBsZVRhbGsgaGFyZHdhcmUgY29uZmlncyAoUGV0ZXIg Um9iaW5zb24pCistIGFsbDogY2xlYW51cDogcmVtb3ZlIHJlZmVyZW5jZXMgdG8gU0xPQiAoUGV0 ZXIgUm9iaW5zb24pCistIGFsbDogY2xlYW51cDogRHJvcCB1bm5lc3NhcnkgQlJDTVNUQiBjb25m aWdzIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBuZXQ6IHJlbW92ZSByZXRpcmVkIG5ldHdvcmsg c2NoZWR1bGVycyAoUGV0ZXIgUm9iaW5zb24pCistIGFsbDogY2xlYW51cCByZW1vdmVkIENPTkZJ R19JTUFfVFJVU1RFRF9LRVlSSU5HIChQZXRlciBSb2JpbnNvbikKKy0gQnVpbGRSZXF1aXJlczog bGxkIGZvciBidWlsZCB3aXRoIHNlbGZ0ZXN0cyBmb3IgeDg2IChKYW4gU3RhbmNlaykKKy0gc3Bl YzogYWRkIGtleXV0aWxzIHRvIHNlbGZ0ZXN0LWludGVybmFsIHN1YnBhY2thZ2UgcmVxdWlyZW1l bnRzIChBcnRlbSBTYXZrb3YpIFsyMTY2OTExXQorLSByZWRoYXQvc3BlYzogZXhjbHVkZSBsaWJ1 cmFuZG9tX3JlYWQuc28gZnJvbSByZXF1aXJlcyAoQXJ0ZW0gU2F2a292KSBbMjEyMDk2OF0KKy0g cnRsYTogc3luYyBzdW1tYXJ5IHRleHQgd2l0aCB1cHN0cmVhbSBhbmQgdXBkYXRlIFJlcXVpcmVz IChKYW4gU3RhbmNlaykKKy0gdWtpLXZpcnQ6IGFkZCBzeXN0ZW1kLXN5c2V4dCBkcmFjdXQgbW9k dWxlIChHZXJkIEhvZmZtYW5uKQorLSB1a2ktdmlydDogYWRkIHZpcnRpb2ZzIGRyYWN1dCBtb2R1 bGUgKEdlcmQgSG9mZm1hbm4pCistIGNvbW1vbjogZGlzYWJsZSB0aGUgRkIgZGV2aWNlIGNyZWF0 aW9uIChQZXRlciBSb2JpbnNvbikKKy0gczM5MHg6IFRoZXJlJ3Mgbm8gRkIgb24gWi1zZXJpZXMg KFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGFhcmNoNjQ6IGVuYWJsZSBTTV9WSURFT0NDXzgz NTAgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGFybTY0OiBlbmFibGUgZXRoZXJuZXQgb24g bmV3ZXIgVEkgaW5kdXN0cmlhbCAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogYXJtNjQ6IERp c2FibGUgVklERU9fSU1YX01FRElBIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiB1c2UgY29t bW9uIGNvbmZpZyBmb3IgU2llbWVucyBTaW1hdGljIElQQyAoUGV0ZXIgUm9iaW5zb24pCistIGZl ZG9yYTogYXJtOiBlbmFibGUgUm9ja2NoaXAgU1BJIGZsYXNoIChQZXRlciBSb2JpbnNvbikKKy0g ZmVkb3JhOiBhcm02NDogZW5hYmxlIERSTV9USV9TTjY1RFNJODMgKFBldGVyIFJvYmluc29uKQor LSBrZXJuZWwuc3BlYzogcmVtb3ZlIGtlcm5lbC1zbXAgcmVmZXJlbmNlIGZyb20gc2NyaXB0cyAo SmFuIFN0YW5jZWspCistIHJlZGhhdDogZG8gbm90IGNvbXByZXNzIHRoZSBmdWxsIGtlcm5lbCBj aGFuZ2Vsb2cgaW4gdGhlIHNyYy5ycG0gKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBBdXRvIGNv bnNvbGlkYXRlIGNvbmZpZ3MgZm9yIHRoZSA2LjcgY3ljbGUgKEp1c3RpbiBNLiBGb3JiZXMpCist IEVuYWJsZSBzb3VuZCBmb3IgYSBsaW5lIG9mIEh1YXdlaSBsYXB0b3BzIChUb21aYW5uYSkKKy0g ZmVkb3JhOiBhIGZldyBjbGVhbnVwcyBhbmQgZHJpdmVyIGVuYWJsZW1lbnRzIChQZXRlciBSb2Jp bnNvbikKKy0gZmVkb3JhOiBhcm02NDogY2xlYW51cCBBbGx3aW5uZXIgUGluY3RybCBkcml2ZXJz IChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBhYXJjaDY0OiBFbmFibGUgc29tZSBEVyBkcml2 ZXJzIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0OiBzaGlwIGFsbCB0aGUgY2hhbmdlbG9nIGZy b20gc291cmNlIGdpdCBpbnRvIGtlcm5lbC1kb2MgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBy ZWRoYXQ6IGNyZWF0ZSBhbiBlbXB0eSBjaGFuZ2Vsb2cgZmlsZSB3aGVuIGNoYW5naW5nIGl0cyBu YW1lIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogUmVtb3ZlIC0t YWxsIGZyb20gZ2l0IHF1ZXJ5IChQcmFyaXQgQmhhcmdhdmEpCistIERpc2FibGUgYWNjZWwgZHJp dmVycyBmb3IgRmVkb3JhIHg4NiAoS2F0ZSBIc3VhbikKKy0gcmVkaGF0OiBzY3JpcHRzOiBBbiBh dXRvbWF0aW9uIHNjcmlwdCBmb3IgZGlzYWJsaW5nIHVudXNlZCBkcml2ZXIgZm9yIHg4NiAoS2F0 ZSBIc3VhbikKKy0gRml4IHVwIEZlZG9yYSBMSkNBIGNvbmZpZ3MgYW5kIGZpbHRlcnMgKEp1c3Rp biBNLiBGb3JiZXMpCistIEZlZG9yYSBjb25maWdzIGZvciA2LjcgKEp1c3RpbiBNLiBGb3JiZXMp CistIFNvbWUgRmVkb3JhIGNvbmZpZyB1cGRhdGVzIGZvciBNTFg1IChKdXN0aW4gTS4gRm9yYmVz KQorLSBUdXJuIG9uIERSTV9BQ0NFTCBkcml2ZXJzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHJlZGhhdDogZW5hYmxlIHRoZSBrZmVuY2UgdGVzdCAoTmljbyBQYWNoZSkKKy0gcmVk aGF0L2NvbmZpZ3M6IEVuYWJsZSBVQ0xBTVBfVEFTSyBmb3IgUGlwZVdpcmUgYW5kIFdpcmVQbHVt YmVyIChOZWFsIEdvbXBhKQorLSBUdXJuIG9uIENPTkZJR19TRUNVUklUWV9ETUVTR19SRVNUUklD VCBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9mZiBzaGVsbGNoZWNrIGZv ciB0aGUgZmVkb3JhLXN0YWJsZS1yZWxlYXNlIHNjcmlwdCAoSnVzdGluIE0uIEZvcmJlcykKKy0g QWRkIHNvbWUgaW5pdGlhbCBGZWRvcmEgc3RhYmxlIGJyYW5jaCBzY3JpcHQgdG8gcmVkaGF0L3Nj cmlwdHMvZmVkb3JhLyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBkaXNhYmxlIGlwdGFi bGVzLWxlZ2FjeSBjb21wYXRpYmlsaXR5IGxheWVyIChGbG9yaWFuIFdlc3RwaGFsKQorLSByZWRo YXQ6IGRpc2FibGUgZGNjcCBjb25udHJhY2sgc3VwcG9ydCAoRmxvcmlhbiBXZXN0cGhhbCkKKy0g Y29uZmlnczogZW5hYmxlIG5ldGZpbHRlcl9uZXRsaW5rX2hvb2sgaW4gZmVkb3JhIHRvbyAoRmxv cmlhbiBXZXN0cGhhbCkKKy0gZXh0NDogTWFyayBtb3VudGluZyBmcy12ZXJpdHkgZmlsZXN5c3Rl bXMgYXMgdGVjaC1wcmV2aWV3IChBbGV4YW5kZXIgTGFyc3NvbikKKy0gZXJvZnM6IEFkZCB0ZWNo IHByZXZpZXcgbWFya2VycyBhdCBtb3VudCAoQWxleGFuZGVyIExhcnNzb24pCistIEVuYWJsZSBm cy12ZXJpdHkgKEFsZXhhbmRlciBMYXJzc29uKQorLSBFbmFibGUgZXJvZnMgKEFsZXhhbmRlciBM YXJzc29uKQorLSBhYXJjaDY0OiBlbmFibGUgdWtpIChHZXJkIEhvZmZtYW5uKQorLSByZWRoYXQ6 IGVuYWJsZSBDT05GSUdfU05EX1NPQ19JTlRFTF9TT0ZfREE3MjE5X01BQ0ggYXMgYSBtb2R1bGUg Zm9yIHg4NiAoUGF0cmljayBUYWxiZXJ0KQorLSBUdXJuIENPTkZJR19NRkRfQ1M0Mkw0M19TRFcg b24gZm9yIFJIRUwgKEp1c3RpbiBNLiBGb3JiZXMpCistIEVuYWJsZSBjcnlwdG9ncmFwaGljIGFj Y2VsZXJhdGlvbiBjb25maWcgZmxhZ3MgZm9yIFBvd2VyUEMgKE1hbWF0aGEgSW5hbWRhcikKKy0g QWxzbyBtYWtlIHZtbGludXotdmlydC5lZmkgd29ybGQgcmVhZGFibGUgKFpiaWduaWV3IErEmWRy emVqZXdza2ktU3ptZWspCistIERyb3AgY3VzdG9tIG1vZGUgZm9yIFN5c3RlbS5tYXAgZmlsZSAo WmJpZ25pZXcgSsSZZHJ6ZWpld3NraS1Tem1laykKKy0gQWRkIGRybV9leGVjX3Rlc3QgdG8gbW9k LWludGVybmFsLmxpc3QgZm9yIGRlcG1vZCB0byBzdWNjZWVkIChNaWthIFBlbnR0aWzDpCkKKy0g UkhFTCA5LjQgRFJNIGJhY2twb3J0ICh1cHRvIHY2LjYga2VybmVsKSwgc3luYyBLY29uZmlncyAo TWlrYSBQZW50dGlsw6QpCistIFR1cm4gb24gVVNCX0RXQzMgZm9yIEZlZG9yYSAocmhieiAyMjUw OTU1KSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IE1vdmUgSU9NTVVGRCB0 byBjb21tb24gKEFsZXggV2lsbGlhbXNvbikKKy0gcmVkaGF0OiBSZWFsbHkgcmVtb3ZlIGNwdXBv d2VyIGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogcmVtb3ZlIHVwZGF0ZV9zY3Jp cHRzLnNoIChQcmFyaXQgQmhhcmdhdmEpCistIEZpeCBzMzkwIHpmY3BmZHVtcCBicGYgYnVpbGQg ZmFpbHVyZXMgZm9yIGNncm91cHMgKERvbiBaaWNrdXMpCistIEZsaXAgQ09ORklHX05WTUVfQVVU SCB0byBtIGluIHBlbmRpbmcgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gQ09ORklHX1NORF9T T0NfSU5URUxfQVZTX01BQ0hfUlQ1NTE0IG9uIGZvciBGZWRvcmEgeDg2IChKYXNvbiBNb250bGVv bikKKy0ga2VybmVsL3JoX21lc3NhZ2VzLmM6IE1hcmsgZnVuY3Rpb25zIGFzIHBvc3NpYmx5IHVu dXNlZCAoUHJhcml0IEJoYXJnYXZhKQorLSBBZGQgc25kLWhkYS1jaXJydXMtc2NvZGVjLXRlc3Qg dG8gbW9kLWludGVybmFsLmxpc3QgKFNjb3R0IFdlYXZlcikKKy0gVHVybiBvZmYgQlBGX1NZU0NB TEwgaW4gcGVuZGluZyBmb3IgemZjcGR1bXAgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBtZWFu X2FuZF92YXJpYW5jZV90ZXN0IHRvIG1vZC1pbnRlcm5hbC5saXN0IChKdXN0aW4gTS4gRm9yYmVz KQorLSBBZGQgY2ZnODAyMTEtdGVzdHMgYW5kIG1hYzgwMjExLXRlc3RzIHRvIG1vZC1pbnRlcm5h bC5saXN0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIENPTkZJR19NRkRfQ1M0Mkw0M19T RFcgZm9yIFJIRUwgaW4gcGVuZGluZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBiY2Fj aGVmcyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGNvbmZpZ3M6IGZl ZG9yYTogRW5hYmxlIFFTRUVDT00gYW5kIGZyaWVuZHMgKEFuZHJldyBIYWxhbmV5KQorLSBBZGQg Y2xrLWZyYWN0aW9uYWwtZGl2aWRlcl90ZXN0IHRvIG1vZC1pbnRlcm5hbC5saXN0IChUaG9yc3Rl biBMZWVtaHVpcykKKy0gQWRkIGdzb190ZXN0IHRvIG1vZC1pbnRlcm5hbC5saXN0IChUaG9yc3Rl biBMZWVtaHVpcykKKy0gQWRkIHByb3BlcnR5LWVudHJ5LXRlc3QgdG8gbW9kLWludGVybmFsLmxp c3QgKFRob3JzdGVuIExlZW1odWlzKQorLSBGZWRvcmEgNi43IGNvbmZpZ3MgcGFydCAxIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBbU2NoZWR1bGVkIGpvYl0gQ2F0Y2ggY29uZmlnIG1pc21hdGNoZXMg ZWFybHkgZHVyaW5nIHVwc3RyZWFtIG1lcmdlIChEb24gWmlja3VzKQorLSByZWRoYXQvc2VsZi10 ZXN0OiBVcGRhdGUgZGF0YSBmb3IgS0FCSSB4eiBjaGFuZ2UgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L3NjcmlwdHM6IFN3aXRjaCBLQUJJIHRhcmJhbGxzIHRvIHh6IChQcmFyaXQgQmhhcmdh dmEpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogU3dpdGNoIEtBQkkgY29tcHJlc3Np b24gdG8geHogKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBzZWxmLXRlc3Q6IFVzZSBhIG1v cmUgY29tcGxldGUgU1JQTSBmaWxlIHN1ZmZpeCAoQW5kcmV3IEhhbGFuZXkpCistIHJlZGhhdDog bWFrZWZpbGU6IHJlbW92ZSBzdHJheSBycG1idWlsZCAtLXdpdGhvdXQgKEVyaWMgQ2hhbnVkZXQp CistIENvbnNvbGlkYXRlIGNvbmZpZ3MgaW50byBjb21tb24gZm9yIDYuNiAoSnVzdGluIE0uIEZv cmJlcykKKy0gVXBkYXRlZCBGZWRvcmEgY29uZmlncyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVy biBvbiBVRlNIQ0QgZm9yIEZlZG9yYSB4ODYgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDog Y29uZmlnczogZ2VuZXJpYzogeDg2OiBEaXNhYmxlIENPTkZJR19WSURFT19PVjAxQTEwIGZvciB4 ODYgcGxhdGZvcm0gKEhhbnMgZGUgR29lZGUpCistIHJlZGhhdDogcmVtb3ZlIHBlbmRpbmctcmhl bCBDT05GSUdfWEZTX0FTU0VSVF9GQVRBTCBmaWxlIChQYXRyaWNrIFRhbGJlcnQpCistIE5ldyBj b25maWdzIGluIGZzL3hmcyAoRmVkb3JhIEtlcm5lbCBUZWFtKQorLSByYW5kb206IEFkZCBob29r IHRvIG92ZXJyaWRlIGRldmljZSByZWFkcyBhbmQgZ2V0cmFuZG9tKDIpIChIZXJiZXJ0IFh1KQor LSByZWRoYXQvY29uZmlnczogc2hhcmUgQ09ORklHX0FSTTY0X0VSUkFUVU1fMjk2NjI5OCBiZXR3 ZWVuIHJoZWwgYW5kIGZlZG9yYSAoTWFyayBTYWx0ZXIpCistIGNvbmZpZ3M6IFJlbW92ZSBTMzkw IElPTU1VIGNvbmZpZyBvcHRpb25zIHRoYXQgbm8gbG9uZ2VyIGV4aXN0IChKZXJyeSBTbml0c2Vs YWFyKQorLSByZWRoYXQ6IGRvY3M6IGNsYXJpZnkgd2hlcmUgYnVncyBhbmQgaXNzdWVzIGFyZSBj cmVhdGVkIChTY290dCBXZWF2ZXIpCistIHJlZGhhdC9zY3JpcHRzL3JoLWRpc3QtZ2l0LnNoIGRv ZXMgbm90IHRha2UgYW55IGFyZ3VtZW50czogZml4IGVycm9yIG1lc3NhZ2UgKERlbnlzIFZsYXNl bmtvKQorLSBBZGQgdGFyZ2V0X2JyYW5jaCBmb3IgZ2VuX2NvbmZpZ19wYXRjaGVzLnNoIChEb24g Wmlja3VzKQorLSByZWRoYXQ6IGRpc2FibGUga3VuaXQgYnkgZGVmYXVsdCAoTmljbyBQYWNoZSkK Ky0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSB0aGUgQU1EX1BNRiBkcml2ZXIgZm9yIFJIRUwgKERh dmlkIEFyY2FyaSkKKy0gTWFrZSBDT05GSUdfQUREUkVTU19NQVNLSU5HIGNvbnNpc3RlbnQgYmV0 d2VlbiBmZWRvcmEgYW5kIHJoZWwgKENocmlzIHZvbiBSZWNrbGluZ2hhdXNlbikKKy0gQ0k6IGFk ZCBhcmstbGF0ZXN0IGJhc2VsaW5lIGpvYiB0byB0YWcgY2tpLWdhdGluZyBmb3Igc3VjY2Vzc2Z1 bCBwaXBlbGluZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gQ0k6IHByb3ZpZGUgY2hpbGQgcGlwZWxp bmVzIGZvciBDS0kgY29udGFpbmVyIGltYWdlIGdhdGluZyAoTWljaGFlbCBIb2ZtYW5uKQorLSBD STogYWxsb3cgdG8gcnVuIGFzIGNoaWxkIHBpcGVsaW5lIChNaWNoYWVsIEhvZm1hbm4pCistIENJ OiBwcm92aWRlIGRlc2NyaXB0aXZlIHBpcGVsaW5lIG5hbWUgZm9yIHNjaGVkdWxlZCBwaXBlbGlu ZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gQ0k6IHVzZSBqb2IgdGVtcGxhdGVzIGZvciB2YXJpYW50 IHZhcmlhYmxlcyAoTWljaGFlbCBIb2ZtYW5uKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxh dGU6IHNpbXBsaWZ5IF9fbW9kc2lnbl9pbnN0YWxsX3Bvc3QgKEphbiBTdGFuY2VrKQorLSBGZWRv cmEgZmlsdGVyIHVwZGF0ZXMgYWZ0ZXIgY29uZmlncyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVk b3JhIGNvbmZpZ3MgZm9yIDYuNiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6 IEZyZWVzY2FsZSBMYXllcnNjYXBlIFNvQyBmYW1pbHkgKFN0ZXZlIEJlc3QpCistIEFkZCBjbGFu ZyBNUi9iYXNlbGluZSBwaXBlbGluZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gQ0k6IFJlbW92ZSB1 bnVzZWQga3BldF90cmVlX2ZhbWlseSAoTmlrb2xhaSBLb25kcmFzaG92KQorLSBBZGQgY2xhbmcg Y29uZmlnIGZyYW1ld29yayAoRG9uIFppY2t1cykKKy0gQXBwbHkgcGFydGlhbCBzbmlwcGV0IGNv bmZpZ3MgdG8gYWxsIGNvbmZpZ3MgKERvbiBaaWNrdXMpCistIFJlbW92ZSB1bnBhY2thZ2VkIGtn Y292IGNvbmZpZyBmaWxlcyAoRG9uIFppY2t1cykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBt aXNzaW5nIEtjb25maWcgb3B0aW9ucyBmb3IgUXVhbGNvbW0gUmlkZVNYNCAoQnJpYW4gTWFzbmV5 KQorLSBlbmFibGUgQ09ORklHX0FERFJFU1NfTUFTS0lORyBmb3IgeDg2XzY0IChDaHJpcyB2b24g UmVja2xpbmdoYXVzZW4pCistIGNvbW1vbjogYWFyY2g2NDogZW5hYmxlIE5YUCBGbGV4IFNQSSAo UGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogU3dpdGNoIFRJX1NDSV9DTEsgYW5kIFRJX1NDSV9Q TV9ET01BSU5TIHN5bWJvbHMgdG8gYnVpbHQtaW4gKEphdmllciBNYXJ0aW5leiBDYW5pbGxhcykK Ky0ga2VybmVsLnNwZWM6IGFkanVzdCBidWlsZCBvcHRpb24gY29tbWVudCAoTWljaGFlbCBIb2Zt YW5uKQorLSBrZXJuZWwuc3BlYzogYWxsb3cgdG8gZW5hYmxlIGFybTY0XzE2ayB2YXJpYW50IChN aWNoYWVsIEhvZm1hbm4pCistIGdpdGxhYi1jaTogZW5hYmxlIGJ1aWxkLW9ubHkgcGlwZWxpbmVz IGZvciBSYXdoaWRlLzE2ay9hYXJjaDY0IChNaWNoYWVsIEhvZm1hbm4pCistIGtlcm5lbC5zcGVj LnRlbXBsYXRlOiBGaXggLS13aXRob3V0IGJwZnRvb2wgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVk aGF0L2NvbmZpZ3M6IE5YUCBCQk5TTSBQb3dlciBLZXkgRHJpdmVyIChTdGV2ZSBCZXN0KQorLSBy ZWRoYXQvc2VsZi10ZXN0OiBVcGRhdGUgZGF0YSBmb3IgY3Jvc3MgY29tcGlsZSBmaWVsZHMgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlLmNyb3NzOiBBZGQgbWVzc2FnZSBmb3Ig ZGlzYWJsZWQgc3VicGFja2FnZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxl LmNyb3NzOiBVcGRhdGUgY3Jvc3MgdGFyZ2V0cyB3aXRoIGRpc2FibGVkIHN1YnBhY2thZ2VzIChQ cmFyaXQgQmhhcmdhdmEpCistIFJlbW92ZSBYRlNfQVNTRVJUX0ZBVEFMIGZyb20gcGVuZGluZy1m ZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIENoYW5nZSBkZWZhdWx0IHBlbmRpbmcgZm9yIFhG U19PTkxJTkVfU0NSVUJfU1RBVFNhcyBpdCBub3cgc2VsZWN0cyBYRlNfREVCVUcgKEp1c3RpbiBN LiBGb3JiZXMpCistIGdpdGxhYi1jaTogdXNlIC0td2l0aCBkZWJ1Zy9iYXNlIHRvIHNlbGVjdCBr ZXJuZWwgdmFyaWFudHMgKE1pY2hhZWwgSG9mbWFubikKKy0ga2VybmVsLnNwZWM6IGFkZCBycG1i dWlsZCAtLXdpdGhvdXQgYmFzZSBvcHRpb24gKE1pY2hhZWwgSG9mbWFubikKKy0gcmVkaGF0OiBz cGVjOiBGaXggdHlwbyBmb3Iga2VybmVsX3ZhcmlhbnRfcHJldW4gZm9yIDE2ay1kZWJ1ZyBmbGF2 b3IgKE5lYWwgR29tcGEpCistIFR1cm4gb2ZmIGFwcGxldGFsayBmb3IgZmVkb3JhIChKdXN0aW4g TS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL21lZGlhIChGZWRvcmEgS2VybmVs IFRlYW0pCistIHJlZGhhdC9kb2NzOiBBZGQgYSBtZW50aW9uIG9mIGJ1Z3ppbGxhIGZvciBidWdz IChQcmFyaXQgQmhhcmdhdmEpCistIEZpeCB0aGUgZml4dXAgb2YgRmVkb3JhIHJlbGVhc2UgKERv biBaaWNrdXMpCistIEZpeCBGZWRvcmEgcmVsZWFzZSBzY2hlZHVsZWQgam9iIChEb24gWmlja3Vz KQorLSBNb3ZlIHNxdWFzaGZzIHRvIGtlcm5lbC1tb2R1bGVzLWNvcmUgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHJlZGhhdDogRXhwbGljaXRseSBkaXNhYmxlIENPTkZJR19DT1BTIChWaXRhbHkgS3V6 bmV0c292KQorLSByZWRoYXQ6IEFkZCBkaXN0LWNoZWNrLWxpY2Vuc2VzIHRhcmdldCAoVml0YWx5 IEt1em5ldHNvdikKKy0gcmVkaGF0OiBJbnRyb2R1Y2UgIlZlcmlmeSBTUERYLUxpY2Vuc2UtSWRl bnRpZmllciB0YWdzIiBzZWxmdGVzdCAoVml0YWx5IEt1em5ldHNvdikKKy0gcmVkaGF0OiBVc2Ug a3NwZHgtdG9vbCBvdXRwdXQgZm9yIHRoZSBMaWNlbnNlOiBmaWVsZCAoVml0YWx5IEt1em5ldHNv dikKKy0gUmVuYW1lIHBpcGVsaW5lIHJlcG8gYnJhbmNoIGFuZCBEVyB0cmVlIG5hbWVzIChNaWNo YWVsIEhvZm1hbm4pCistIEFkanVzdCBjb21tZW50cyB0aGF0IHJlZmVyIHRvIEFSSyBpbiBhIFJh d2hpZGUgY29udGV4dCAoTWljaGFlbCBIb2ZtYW5uKQorLSBSZW5hbWUgdmFyaWFibGUgbmFtZXMg c3RhcnRpbmcgd2l0aCBhcmstIHRvIHJhd2hpZGUtIChNaWNoYWVsIEhvZm1hbm4pCistIFJlbmFt ZSB0cmlnZ2VyLWFyayB0byB0cmlnZ2VyLXJhd2hpZGUgKE1pY2hhZWwgSG9mbWFubikKKy0gRml4 IHVwIGNvbmZpZyBtaXNtYXRjaGVzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJl ZGhhdC9jb25maWdzOiBUZXhhcyBJbnN0cnVtZW50cyBJbmMuIEszIG11bHRpY29yZSBTb0MgYXJj aGl0ZWN0dXJlIChTdGV2ZSBCZXN0KQorLSBGbGlwIENPTkZJR19WSURFT19WNEwyX1NVQkRFVl9B UEkgaW4gcGVuZGluZyBSSEVMIGR1ZSB0byBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0g Q09ORklHX0hXX1JBTkRPTV9ISVNJOiBtb3ZlIHRvIGNvbW1vbiBhbmQgc2V0IHRvIG0gKFNjb3R0 IFdlYXZlcikKKy0gVHVybiBvZmYgQ09ORklHX01FTU9SWV9IT1RQTFVHX0RFRkFVTFRfT05MSU5F IGZvciBGZWRvcmEgczM5MHggKEp1c3RpbiBNLiBGb3JiZXMpCistIERpc2FibGUgdGVzdHMgZm9y IEVMTiByZWFsdGltZSBwaXBlbGluZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gTmV3IGNvbmZpZ3Mg aW4gbW0vS2NvbmZpZyAoRmVkb3JhIEtlcm5lbCBUZWFtKQorLSBGbGlwIENPTkZJR19TTkRfU09D X0NTMzVMNTZfU0RXIHRvIG0gYW5kIGNsZWFuIHVwIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQg ZHJtX2V4ZWNfdGVzdCB0byBtb2QtaW50ZXJuYWwubGlzdCAoVGhvcnN0ZW4gTGVlbWh1aXMpCist IEFkZCBuZXcgcGVuZGluZyBlbnRyeSBmb3IgQ09ORklHX1NORF9TT0NfQ1MzNUw1Nl9TRFcgdG8g Zml4IG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdGFyYmFsbCBjcmVhdGlvbiBs b2dpYyAoRG9uIFppY2t1cykKKy0gcmVkaGF0OiBidW1wIGxpYmNwdXBvd2VyIHNvbmFtZSB0byBt YXRjaCB1cHN0cmVhbSAoUGF0cmljayBUYWxiZXJ0KQorLSBUdXJuIG9uIE1FTUZEX0NSRUFURSBp biBwZW5kaW5nIGFzIGl0IGlzIHNlbGVjdGVkIGJ5IENPTkZJR19UTVBGUyAoSnVzdGluIE0uIEZv cmJlcykKKy0gcmVkaGF0OiBkcm9wIHVubmVlZGVkIGJ1aWxkLXRpbWUgZGVwZW5kZW5jeSBnY2Mt cGx1Z2luLWRldmVsIChDb2lieSBYdSkKKy0gYWxsOiB4ODY6IG1vdmUgd2F5d2FyZCB4ODYgc3Bl Y2lmaWMgY29uZmlnIGhvbWUgKFBldGVyIFJvYmluc29uKQorLSBhbGw6IGRlLWR1cGUgbm9uIHN0 YW5kYXJkIGNvbmZpZyBvcHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiB4ODY6IGNsZWFu IHVwIG1pY3JvY29kZSBsb2FkaW5nIG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSBjb21tb246 IHJlbW92ZSB1bm5lc3NhcnkgQ09ORklHX1NORF9NRVNPTl9BWEcqIChQZXRlciBSb2JpbnNvbikK Ky0gcmVkaGF0OiBGaXggVUtJIGluc3RhbGwgd2l0aCBzeXN0ZW1kID49IDI1NCAoVml0YWx5IEt1 em5ldHNvdikKKy0gcmVkaGF0OiBVc2UgbmFtZWQgcGFyYW1ldGVycyBmb3Iga2VybmVsX3Zhcmlh bnRfcG9zdHRyYW5zKCkva2VybmVsX3ZhcmlhbnRfcHJldW4oKSAoVml0YWx5IEt1em5ldHNvdikK Ky0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiB1cGRhdGUgY29tcHJlc3Npb24gdmFyaWFi bGVzIHRvIHN1cHBvcnQgenN0ZCAoQnJpYW4gTWFzbmV5KQorLSBDb25zb2xpZGF0ZSBjb25maWdz IHRvIGNvbW1vbiBmb3IgNi41IChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZW1vdmUgdW51c2VkIGNv bmZpZyBlbnRyeSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvc2VsZi10 ZXN0OiBSZW1vdmUgcnBtbGludCB0ZXN0IChQcmFyaXQgQmhhcmdhdmEpCistIFJlbW92ZSB0aGUg YXJtdjcgY29uZmlnIGRpcmVjdG9yeSBmcm9tIEZlZG9yYSBhZ2FpbiAoSnVzdGluIE0uIEZvcmJl cykKKy0gRW5hYmxlIENPTkZJR19FWFBFUlQgZm9yIGJvdGggUkhFTCBhbmQgRmVkb3JhIChKdXN0 aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19ERVZJQ0VfUFJJ VkFURSBvbiBhYXJjaDY0IChEYXZpZCBIaWxkZW5icmFuZCkgWzIyMzE0MDddCistIHJlZGhhdC9j b25maWdzOiBkaXNhYmxlIENPTkZJR19ST0NLQ0hJUF9FUlJBVFVNXzM1ODgwMDEgZm9yIFJIRUwg KE1hcmsgU2FsdGVyKQorLSByZWRoYXQ6IHNoZWxsY2hlY2sgZml4ZXMgKFByYXJpdCBCaGFyZ2F2 YSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSB0ZWdyYTExNCBTUEkgKE1hcmsgU2FsdGVyKQor LSBhbGw6IHByb3Blcmx5IGNsZWFudXAgZmlyZXdpcmUgb25jZSBhbmQgZm9yIGFsbCAoUGV0ZXIg Um9iaW5zb24pCistIEZpeCB1cCBmaWx0ZXJzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMp CistIE5ldyBjb25maWdzIGluIGFyY2gveDg2IChGZWRvcmEgS2VybmVsIFRlYW0pCistIEFkZCBh biBhcm12NyBkaXJlY3RvcnkgYmFjayBmb3IgdGhlIEZlZG9yYSBjb25maWdzIChKdXN0aW4gTS4g Rm9yYmVzKQorLSBGZWRvcmEgNi41IGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBUdXJuIG9mZiBETUFCVUZfU1lTRlNfU1RBVFMgKEp1c3RpbiBNLiBGb3JiZXMpCistIENJOiBy YXdoaWRlX3JlbGVhc2U6IHN3aXRjaCB0byB1c2luZyBzY3JpcHQgdG8gcHVzaCAoRG9uIFppY2t1 cykKKy0gcmVkaGF0L3NlbGYtdGVzdDogVXBkYXRlIHNlbGYtdGVzdCBkYXRhIChQcmFyaXQgQmhh cmdhdmEpCistIHJlZGhhdC9zY3JpcHRzL2Nyb3NzLWNvbXBpbGU6IFVwZGF0ZSBkb3dubG9hZF9j cm9zcy5zaCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGUuY3Jvc3M6IFJlbW92 ZSBBUkNIIHNlbGVjdGlvbiBjb2RlIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmls ZS5jcm9zczogVXBkYXRlIHNjcmlwdCAoUHJhcml0IEJoYXJnYXZhKQorLSBGaXggaW50ZXJydXB0 aWJsZSBub24gTVIgam9icyAoTWljaGFlbCBIb2ZtYW5uKQorLSBhbGw6IHJ1biBldmFsdWF0ZV9j b25maWdzIHRvIGRlLWR1cGUgbWVyZ2VkIGFhcmNoNjQgKFBldGVyIFJvYmluc29uKQorLSBhbGw6 IGFybTogbWVyZ2UgdGhlIGFybSBhbmQgYXJtL2FhcmNoNjQgKFBldGVyIFJvYmluc29uKQorLSBm ZWRvcmE6IHJlbW92ZSBBUk12NyBBS0EgYXJtaGZwIGNvbmZpZ3VyYXRpb25zIChQZXRlciBSb2Jp bnNvbikKKy0gZmVkb3JhOiByZW1vdmUgQVJNdjcgQUtBIGFybWhmcCBzdXBwb3J0IChQZXRlciBS b2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfVklSVElPX01FTSBvbiBh YXJjaDY0IChEYXZpZCBIaWxkZW5icmFuZCkgWzIwNDQxNTVdCistIHJlZGhhdC9jb25maWdzOiBl bmFibGUgQ09ORklHX01FTU9SWV9IT1RSRU1PVkUgYWFyY2g2NCAoRGF2aWQgSGlsZGVuYnJhbmQp IFsyMDYyMDU0XQorLSByZWRoYXQ6IEFkZCBhcm02NC0xNmsga2VybmVsIGZsYXZvciBzY2FmZm9s ZCBmb3IgMTZLIHBhZ2Utc2l6ZSdkIEFBcmNoNjQgKE5lYWwgR29tcGEpCistIGZlZG9yYTogZW5h YmxlIGkzYyBvbiBhYXJjaDY0IChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IFJl bW92ZSBgQ09ORklHX0haXzEwMDAgaXMgbm90IHNldGAgZm9yIGFhcmNoNjQgKEVucmljIEJhbGxl dGJvIGkgU2VycmEpCistIHJlZGhhdC9jb25maWdzOiB0dXJuIG9uIHRoZSBmcmFtZXdvcmsgZm9y IFNQSSBOT1IgZm9yIEFSTSAoU3RldmUgQmVzdCkKKy0gY29uZmlnczogYWRkIG5ldyBDaHJvbWVP UyBVQVJUIGRyaXZlciAoTWFyayBMYW5nc2RvcmYpCistIGNvbmZpZ3M6IGFkZCBuZXcgQ2hyb21l T1MgSHVtYW4gUHJlc2VuY2UgU2Vuc29yIChNYXJrIExhbmdzZG9yZikKKy0gcmVkaGF0L2NvbmZp Z3M6IEVuYWJsZSBDT05GSUdfTlZJRElBX1dNSV9FQ19CQUNLTElHSFQgZm9yIGJvdGggRmVkb3Jh IGFuZCBSSEVMIChLYXRlIEhzdWFuKQorLSByZWRoYXQvY29uZmlnczogVGV4YXMgSW5zdHJ1bWVu dHMgSU5BMzIyMSBkcml2ZXIgKFN0ZXZlIEJlc3QpCistIGFybTogaS5NWDogU29tZSBtaW5vciBO WFAgaS5NWCBjbGVhbnVwcyAoUGV0ZXIgUm9iaW5zb24pCistIERlc2NyaXB0aW9uOiBTZXQgY29u ZmlnIGZvciBUZWdyYTIzNCBwaW5jdHJsIGRyaXZlciAoSm9lbCBTbGVib2RuaWNrKQorLSBVcGRh dGUgUlBNIFNjcmlwdGxldCBmb3Iga2VybmVsLWluc3RhbGwgQ2hhbmdlcyAoSm9uYXRoYW4gU3Rl ZmZhbikKKy0gW0NJXSBhZGQgZXhpdCAwIHRvIHRoZSBlbmQgb2YgQ0kgc2NyaXB0cyAoRG9uIFpp Y2t1cykKKy0gcmVkaGF0OiBjb25maWdzOiBEaXNhYmxlIENPTkZJR19DUllQVE9fU1RBVFMgc2lu Y2UgcGVyZm9ybWFuY2UgaXNzdWUgZm9yIHN0b3JhZ2UgKEthdGUgSHN1YW4pIFsyMjI3NzkzXQor LSBSZW1vdmUgb2Jzb2xldGUgdmFyaWFibGUgZnJvbSBnaXRsYWItY2kueW1sIChPbmRyZWogS2lu c3QpCistIHJlZGhhdC9jb25maWdzOiBNb3ZlIEdWVC1nIHRvIEZlZG9yYSBvbmx5IChBbGV4IFdp bGxpYW1zb24pCistIFtDSV0gTWFrZSBzdXJlIHdlIGFyZSBvbiBjb3JyZWN0IGJyYW5jaCBiZWZv cmUgcnVubmluZyBzY3JpcHQgKERvbiBaaWNrdXMpCistIENJOiBhcmstdXBkYXRlLWNvbmZpZ3M6 IHN5bmMgcHVzaCBjb21tYW5kIGFuZCBvdXRwdXQgKERvbiBaaWNrdXMpCistIENJOiBhcmstdXBk YXRlLWNvbmZpZ3M6IG1pc2MgY2hhbmdlcyAoRG9uIFppY2t1cykKKy0gQ0k6IHN5bmMgYXJrLWNy ZWF0ZS1yZWxlYXNlIHB1c2ggY29tbWFuZHMgd2l0aCBvdXRwdXQgKERvbiBaaWNrdXMpCistIENJ OiBhcmstY3JlYXRlLXJlbGVhc2U6IEFkZCBhIHJvYnVzdCBjaGVjayBpZiBub3RoaW5nIGNoYW5n ZWQgKERvbiBaaWNrdXMpCistIENJOiBSZW1vdmUgbGVnYWN5IHRhZyBjaGVjayBjcnVmdCAoRG9u IFppY2t1cykKKy0gQ0k6IEludHJvZHVjZSBzaW1wbGUgZW52aXJvbm1lbnQgc2NyaXB0IChEb24g Wmlja3VzKQorLSByZWRoYXQvY29uZmlnczogRGlzYWJsZSBGSVJFV0lSRSBmb3IgUkhFTCAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2NyaXB0cy9yaC1kaXN0LWdpdC5zaDogcHJpbnQgbGlz dCBvZiB1cGxvYWRlZCBmaWxlcyAoRGVueXMgVmxhc2Vua28pCistIHJlZGhhdC9zY3JpcHRzL2V4 cGFuZF9zcnBtLnNoOiBhZGQgbWlzc2luZyBmdW5jdGlvbiwgcm9idXN0aWZ5IChEZW55cyBWbGFz ZW5rbykKKy0gcmVkaGF0OiBFbmFibGUgSFNSIGFuZCBQUlAgKEZlbGl4IE1hdXJlcikKKy0gcmVk aGF0L3NjcmlwdHMvcmgtZGlzdC1naXQuc2g6IGZpeCBvdXRkYXRlZCBtZXNzYWdlIGFuZCBjb21t ZW50IChEZW55cyBWbGFzZW5rbykKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgQ09ORklHX0k4 SyAoUHJhcml0IEJoYXJnYXZhKQorLSBNYWtlIHN1cmUgcG9zdHRyYW5zIHNjcmlwdCBkb2Vzbid0 IGZhaWwgaWYgcmVzdG9yZWNvbiBpcyBub3QgaW5zdGFsbGVkIChEYWFuIERlIE1leWVyKQorLSBV cGRhdGUgZmlsdGVycyBmb3IgbmV3IGNvbmZpZyBpdGVtcyAoSnVzdGluIE0uIEZvcmJlcykKKy0g TW9yZSBGZWRvcmEgNi41IGNvbmZpZ3MgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25m aWdzOiBkaXNhYmxlIHByZS1VVkMgY2FtZXJhcyBmb3IgUkhFTCBvbiBhYXJjaDY0IChEZWFuIE5l bHNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfTUVESUFfU1VQUE9SVCBmb3Ig UkhFTCBvbiBhYXJjaDY0IChEZWFuIE5lbHNvbikKKy0gbW92ZSBvd25lcnNoaXAgb2YgL2xpYi9t b2R1bGVzLzx2ZXI+LyB0byBrZXJuZWwtY29yZSAoVGhvcnN0ZW4gTGVlbWh1aXMpCistIExldCBr ZXJuZWwtbW9kdWxlcy1jb3JlIG93biB0aGUgZmlsZXMgZGVwbW9kIGdlbmVyYXRlcy4gKFRob3Jz dGVuIExlZW1odWlzKQorLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJsZSBDT05GSUdfVFlQRUNfU1RV U0IxNjBYIGZvciByaGVsIG9uIGFhcmNoNjQgKERlc25lcyBOdW5lcykKKy0gQWRkIGZpbHRlcnMg Zm9yIHB0cF9kZmxfdG9kIG9uIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIDYu NSBjb25maWdzIHBhcnQgMSAoSnVzdGluIE0uIEZvcmJlcykKKy0gZmVkb3JhOiBlbmFibGUgQ09O RklHX1pZTlFNUF9JUElfTUJPWCBhcyBhIGJ1aWx0aW4gaW4gcGVuZGluZy1mZWRvcmEgKFBhdHJp Y2sgVGFsYmVydCkKKy0gZmVkb3JhOiBhcm06IHNvbWUgbWlub3IgdXBkYXRlcyAoUGV0ZXIgUm9i aW5zb24pCistIGZlZG9yYTogYmx1ZXRvb3RoOiBlbmFibGUgQU9TUCBleHRlbnNpb25zIChQZXRl ciBSb2JpbnNvbikKKy0gZmVkb3JhOiB3aWZpOiB0d2VhayBaWURBUyBXaUZJIGNvbmZpZyBvcHRp b25zIChQZXRlciBSb2JpbnNvbikKKy0gc2NzaTogc2Q6IEFkZCAicHJvYmVfdHlwZSIgbW9kdWxl IHBhcmFtZXRlciB0byBhbGxvdyBzeW5jaHJvbm91cyBwcm9iaW5nIChFd2FuIEQuIE1pbG5lKSBb MjE0MDAxN10KKy0gcmVkaGF0L2NvbmZpZ3M6IGFsbG93IElNQSB0byB1c2UgTU9LIGtleXMgKENv aWJ5IFh1KQorLSBTaW1wbGlmeSBkb2N1bWVudGF0aW9uIGpvYnMgKE1pY2hhZWwgSG9mbWFubikK Ky0gQXV0by1jYW5jZWwgcGlwZWxpbmVzIG9ubHkgb24gTVJzIChNaWNoYWVsIEhvZm1hbm4pCist IENJOiBDYWxsIHNjcmlwdCBkaXJlY3RseSAoRG9uIFppY2t1cykKKy0gQ0k6IFJlbW92ZSBzdGFs ZSBUQUcgYW5kIE1ha2VmaWxlIGNydWZ0IChEb24gWmlja3VzKQorLSBDSTogTW92ZSBvcy1idWls ZCB0cmFja2luZyB0byBjb21tb24gYXJlYSAoRG9uIFppY2t1cykKKy0gcmVkaGF0OiB1c2UgdGhl IGVsbiBidWlsZGVyIGZvciBkYWlseSBqb2JzIChQYXRyaWNrIFRhbGJlcnQpCistIHJlZGhhdDog c2V0IENPTkZJR19YSUxJTlhfV0lORE9XX1dBVENIRE9HIGFzIGRpc2FibGVkIGluIHBlbmRpbmcg KFBhdHJpY2sgVGFsYmVydCkKKy0gQWRkIGJhc2VsaW5lIEFSSy9FTE4gcGlwZWxpbmVzIChNaWNo YWVsIEhvZm1hbm4pCistIFNpbXBsaWZ5IGpvYiBydWxlcyAoTWljaGFlbCBIb2ZtYW5uKQorLSBC dWlsZCBFTE4gc3JwbSBmb3IgYm90IGNoYW5nZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gUnVuIFJI IHNlbGZ0ZXN0cyBmb3IgRUxOIChNaWNoYWVsIEhvZm1hbm4pCistIFNpbXBsaWZ5IGpvYiB0ZW1w bGF0ZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gRXh0cmFjdCBydWxlcyB0byBhbGxvdyBvcnRob2dv bmFsIGNvbmZpZ3VyYXRpb24gKE1pY2hhZWwgSG9mbWFubikKKy0gUmVxdWlyZSBFTE4gcGlwZWxp bmVzIGlmIHN0YXJ0ZWQgYXV0b21hdGljYWxseSAoTWljaGFlbCBIb2ZtYW5uKQorLSBBZGQgQVJL IGRlYnVnIHBpcGVsaW5lIChNaWNoYWVsIEhvZm1hbm4pCistIEV4dHJhY3QgY29tbW9uIHBhcnRz IG9mIGNoaWxkIHBpcGVsaW5lIGpvYiAoTWljaGFlbCBIb2ZtYW5uKQorLSBNb3ZlIEFSSyBwaXBl bGluZSB2YXJpYWJsZXMgaW50byBqb2IgdGVtcGxhdGUgKE1pY2hhZWwgSG9mbWFubikKKy0gU2lt cGxpZnkgQVJLIHBpcGVsaW5lIHJ1bGVzIChNaWNoYWVsIEhvZm1hbm4pCistIENoYW5nZSBwYXRo Zml4LnB5IHRvICUlcHkzX3NoZWJhbmdfZml4IChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9u IE5FVF9WRU5ET1JfUVVBTENPTU0gZm9yIEZlZG9yYSB0byBlbmFibGUgcm1uZXQgKEp1c3RpbiBN LiBGb3JiZXMpCistIHJlZGhhdDogYWRkIGludGVsLW0xMC1ibWMtaHdtb24gdG8gZmlsdGVyLW1v ZHVsZXMgc2luZ2xlbW9kcyBsaXN0IChQYXRyaWNrIFRhbGJlcnQpCistIGZlZGlyYTogZW5hYmxl IHBlbmRpbmctZmVkb3JhIENPTkZJR19DUFVGUkVRX0RUX1BMQVRERVYgYXMgYSBtb2R1bGUgKFBh dHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0OiBmaXggdGhlICdlbG4gQlVJTERfVEFSR0VUJyBzZWxm LXRlc3QgKFBhdHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0OiB1cGRhdGUgdGhlIHNlbGYtdGVzdC1k YXRhIChQYXRyaWNrIFRhbGJlcnQpCistIHJlZGhhdDogcmVtb3ZlIHRyYWlsaW5nIHNwYWNlIGlu IGRpc3QtZHVtcC12YXJpYWJsZXMgb3V0cHV0IChQYXRyaWNrIFRhbGJlcnQpCistIEFsbG93IEVM TiBwaXBlbGluZXMgZmFpbHVyZXMgKE1pY2hhZWwgSG9mbWFubikKKy0gRW5hYmxlIGNzLWxpa2Ug Q0kgKE1pY2hhZWwgSG9mbWFubikKKy0gQWxsb3cgdG8gYXV0by1jYW5jZWwgcmVkdW5kYW50IHBp cGVsaW5lcyAoTWljaGFlbCBIb2ZtYW5uKQorLSBSZW1vdmUgb2Jzb2xldGUgdW51c2VkIHRyaWdn ZXIgdmFyaWFibGUgKE1pY2hhZWwgSG9mbWFubikKKy0gRml4IGxpbnRlciB3YXJuaW5ncyBpbiAu Z2l0bGFiLWNpLnltbCAoTWljaGFlbCBIb2ZtYW5uKQorLSBjb25maWc6IHdpZmk6IGRlYnVnIG9w dGlvbnMgZm9yIGF0aDExaywgYnJjbTgwMjExIGFuZCBpd2x3aWZpICjDjcOxaWdvIEh1Z3VldCkK Ky0gcmVkaGF0OiBhbGxvdyBkYmdvbmx5IGNyb3NzIGJ1aWxkcyAoSmFuIFN0YW5jZWspCistIHJl ZGhhdC9jb25maWdzOiBDbGVhbiB1cCB4ODYtNjQgY2FsbCBkZXB0aCB0cmFja2luZyBjb25maWdz IChXYWltYW4gTG9uZykKKy0gcmVkaGF0OiBtb3ZlIFNORCBjb25maWdzIGZyb20gcGVuZGluZy1y aGVsIHRvIHJoZWwgKFBhdHJpY2sgVGFsYmVydCkKKy0gRml4IHVwIGFybXY3IGNvbmZpZ3MgZm9y IEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBTZXQgcGVuZGluZy1yaGVsIHg4 NiB2YWx1ZXMgZm9yIHZhcmlvdXMgU05EIGNvbmZpZ3MgKFBhdHJpY2sgVGFsYmVydCkKKy0gcmVk aGF0OiB1cGRhdGUgc2VsZi10ZXN0IGRhdGEgKFBhdHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0OiBp Z25vcmUgU1BFQ0JQRlRPT0xWRVJTSU9OL2JwZnRvb2x2ZXJzaW9uIGluIHNlbGYtdGVzdCBjcmVh dGUtZGF0YS5zaCAoUGF0cmljayBUYWxiZXJ0KQorLSBmZWRvcmEvcmhlbDogTW92ZSBJMkNfREVT SUdOV0FSRV9QTEFURk9STSwgSTJDX1NMQVZFLCAmIEdQSU9MSUIgZnJvbSBwZW5kaW5nIChQYXRy aWNrIFRhbGJlcnQpCistIHJlZGhhdC9maWx0ZXItbW9kdWxlcy5zaC5yaGVsOiBhZGQgbmVlZGVk IGRlcHMgZm9yIGludGVsX3JhcGxfdHBtaSAoSmFuIFN0YW5jZWspCistIGZlZG9yYTogRW5hYmxl IENPTkZJR19TUElfU0xBVkUgKFBhdHJpY2sgVGFsYmVydCkKKy0gZmVkb3JhL3JoZWw6IGVuYWJs ZSBJMkNfREVTSUdOV0FSRV9QTEFURk9STSwgSTJDX1NMQVZFLCBhbmQgR1BJT0xJQiAoUGF0cmlj ayBUYWxiZXJ0KQorLSBmZWRvcmE6IEVuYWJsZSBDT05GSUdfU1BJX1NMQVZFIGluIGZlZG9yYS1w ZW5kaW5nIChQYXRyaWNrIFRhbGJlcnQpCistIHJlZGhhdDogcmVtb3ZlIGV4dHJhICsgKHBsdXMp IGZyb20gbWV0YSBwYWNrYWdlIFJlcXVpcmVzIGRlZmluaXRpb25zIChQYXRyaWNrIFRhbGJlcnQp CistIEFkZCBpbnRlbC1tMTAtYm1jLWh3bW9uIHRvIHNpbmdsZW1vZHMgKFRob3JzdGVuIExlZW1o dWlzKQorLSBBZGQgaGlkLXVjbG9naWMtdGVzdCB0byBtb2QtaW50ZXJuYWwubGlzdCAoVGhvcnN0 ZW4gTGVlbWh1aXMpCistIEFkZCBjaGVja3N1bV9rdW5pdC5rbyB0byBtb2QtaW50ZXJuYWwubGlz dCAoVGhvcnN0ZW4gTGVlbWh1aXMpCistIEFkZCBzdHJjYXRfa3VuaXQgdG8gbW9kLWludGVybmFs Lmxpc3QgKFRob3JzdGVuIExlZW1odWlzKQorLSBBZGQgaW5wdXRfdGVzdCB0byBtb2QtaW50ZW5h bC5saXN0IChUaG9yc3RlbiBMZWVtaHVpcykKKy0gUmV2ZXJ0ICJSZW1vdmUgRVhQRVJUIGZyb20g QVJDSF9GT1JDRV9NQVhfT1JERVIgZm9yIGFhcmNoNjQiIChKdXN0aW4gTS4gRm9yYmVzKQorLSBG aXggdXAgcmViYXNlIGlzc3VlIHdpdGggQ09ORklHX0FSQ0hfRk9SQ0VfTUFYX09SREVSIChKdXN0 aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IERpc2FibGUgJ2V4 dHJhY3RpbmcgZGVidWcgaW5mbycgbWVzc2FnZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0ga2VybmVs L3JoX21lc3NhZ2VzLmM6IEFub3RoZXIgZ2NjMTIgd2FybmluZyBvbiByZWR1bmRhbnQgTlVMTCB0 ZXN0IChGbG9yaWFuIFdlaW1lcikgWzIyMTY2NzhdCistIHJlZGhhdDogZml4IHNpZ25pbmcgZm9y IHJlYWx0aW1lIGFuZCBhcm02NF82NGsgbm9uLWRlYnVnIHZhcmlhbnRzIChKYW4gU3RhbmNlaykK Ky0gcmVkaGF0OiB0cmVhdCB3aXRoX3VwIGNvbnNpc3RlbnRseSAoSmFuIFN0YW5jZWspCistIHJl ZGhhdDogbWFrZSB3aXRoX3JlYWx0aW1lIG9wdC1pbiAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9j b25maWdzOiBEaXNhYmxlIHFjb20gYXJtdjcgZHJpcHBpbmdzIGluIHRoZSBhYXJjaDY0IHRyZWUg KEplcmVteSBMaW50b24pCistIGtlcm5lbC5zcGVjOiBkcm9wIG9ic29sZXRlIGxkY29uZmlnIChK YW4gU3RhbmNlaykKKy0gQ29uc29saWRhdGUgY29uZmlnIGl0ZW1zIHRvIGNvbW1vbiBmb3IgNi40 IGN5Y2xlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIENPP05GSWdfUk1ORVQgZm9yIEZl ZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdf TUFOQV9JTkZJTklCQU5EPW0gZm9yIEFSSyAoVml0YWx5IEt1em5ldHNvdikKKy0gcmVkaGF0L2Nv bmZpZzogY29tbW9uOiBFbmFibGUgQ09ORklHX0dQSU9fU0lNIGZvciBzb2Z0d2FyZSBkZXZlbG9w bWVudCAoS2F0ZSBIc3VhbikKKy0gcmVkaGF0OiBmaXggcHJvYmxlbSB3aXRoIFJUIGt2bSBtb2R1 bGVzIGxpc3RlZCB0d2ljZSBpbiBycG0gZ2VuZXJhdGlvbiAoQ2xhcmsgV2lsbGlhbXMpCistIHJl ZGhhdDogdHVybiBvZmYgNjRrIGtlcm5lbCBidWlsZHMgd2l0aCBydG9ubHkgKENsYXJrIFdpbGxp YW1zKQorLSByZWRoYXQ6IHR1cm4gb2ZmIHpmY3BkdW1wIGZvciBydG9ubHkgKENsYXJrIFdpbGxp YW1zKQorLSByZWRoYXQ6IGRvbid0IGFsbG93IHdpdGhfcnRvbmx5IHRvIHR1cm4gb24gdW5zdXBw b3J0ZWQgYXJjaGVzIChDbGFyayBXaWxsaWFtcykKKy0gcmVkaGF0OiB1cGRhdGUgc2VsZi10ZXN0 IGRhdGEgZm9yIGFkZGl0aW9uIG9mIFJUIGFuZCA2NGstcGFnZSB2YXJpYW50cyAoQ2xhcmsgV2ls bGlhbXMpCistIHJlZGhhdDogZml4IHJlYWx0aW1lIGFuZCBlZml1a2kgYnVpbGQgY29uZmxpY3Qg KEphbiBTdGFuY2VrKQorLSBhcm02NC02NGs6IEFkZCBuZXcga2VybmVsIHZhcmlhbnQgdG8gUkhF TDkvQ1M5IGZvciA2NEsgcGFnZS1zaXplJ2QgQVJNNjQgKERvbmFsZCBEdXRpbGUpIFsyMTUzMDcz XQorLSByZWRoYXQ6IFRFTVBPUkFSWSBzZXQgY29uZmlncyB0byBkZWFsIHdpdGggUFJFRU1QVF9S VCBub3QgYXZhaWxhYmxlIChDbGFyayBXaWxsaWFtcykKKy0gcmVkaGF0OiBURU1QT1JBUlkgZGVm YXVsdCByZWFsdGltZSB0byBvZmYgKENsYXJrIFdpbGxpYW1zKQorLSByZWRoYXQ6IG1vdmVkIEFS TSBlcnJhdGEgY29uZmlncyB0byBhcm0gZGlyIChDbGFyayBXaWxsaWFtcykKKy0gcmVkaGF0OiBS VCBwYWNrYWdpbmcgY2hhbmdlcyAoQ2xhcmsgV2lsbGlhbXMpCistIHJlZGhhdDogbWlzY2VsbGFu ZW91cyBjb21taXRzIG5lZWRlZCBkdWUgdG8gQ09ORklHX0VYUEVSVCAoQ2xhcmsgV2lsbGlhbXMp CistIHJlZGhhdDogcmVhbHRpbWUgY29uZmlnIGVudHJpZXMgKENsYXJrIFdpbGxpYW1zKQorLSBj b21tb246IHJlbW92ZSBkZWxldGVkIFVTQiBQQ0NBUkQgZHJpdmVycyAoUGV0ZXIgUm9iaW5zb24p CistIGZlZG9yYTogZnVydGhlciBjbGVhbnVwIG9mIHBjY2FyZC9jYXJkYnVzIHN1YnN5c3RlbSAo UGV0ZXIgUm9iaW5zb24pCistIGNvbW1vbjogcHJvcGVybHkgZGlzYWJsZSBQQ0NBUkQgc3Vic3lz dGVtIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6IGFybTogZW5hYmxlIFNFUklB TF9URUdSQSBVQVJUIGZvciBSSEVMIChNYXJrIFNhbHRlcikKKy0gcmVkaGF0L2NvbmZpZ3M6IGVu YWJsZSBDT05GSUdfWDg2X0FNRF9QU1RBVEVfVVQgKERhdmlkIEFyY2FyaSkKKy0gcmVkaGF0L2Nv bmZpZ3M6IEVuYWJsZSBDT05GSUdfVENHX1ZUUE1fUFJPWFkgZm9yIFJIRUwgKMWgdMSbcMOhbiBI b3LDocSNZWspCistIHJlZGhhdDogZG8gbm90IHBhY2thZ2UgKi5tb2QuYyBnZW5lcmF0ZWQgZmls ZXMgKERlbnlzIFZsYXNlbmtvKQorLSBBTFNBIGNvbmZpZ3VyYXRpb24gY2hhbmdlcyBmb3IgQVJL L1JIRUwgOS4zIChKYXJvc2xhdiBLeXNlbGEpCistIHNwZWM6IHJlbW92ZSByZXNvbHZlX2J0Zmlk cyBmcm9tIGtlcm5lbC1kZXZlbCAoVmlrdG9yIE1hbGlrKQorLSBGaXggdHlwbyBpbiBmaWx0ZXIt bW9kdWxlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05G SUdfSU5JVF9TVEFDS19BTExfWkVSTyBmb3IgUkhFTCAoSm9zaCBQb2ltYm9ldWYpCistIFJlbW92 ZSBDT05GSUdfQVJDSF9GT1JDRV9NQVhfT1JERVIgZm9yIGFhcmNoNjQgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIEZpeCB1cCBjb25maWcgYW5kIGZpbHRlciBmb3IgUFRQX0RGTF9UT0QgKEp1c3RpbiBN LiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBJTVg4VUxQIHBpbmN0cmwgZHJpdmVyIChTdGV2 ZSBCZXN0KQorLSByZWRoYXQvY29uZmlnczogaW5jcmVhc2UgQ09ORklHX0ZSQU1FX1dBUk4gZm9y IEZlZG9yYSBvbiBhYXJjaDY0IChCcmlhbiBNYXNuZXkpCistIHJlZGhhdC9jb25maWdzOiBhZGQg dHdvIG1pc3NpbmcgS2NvbmZpZyBvcHRpb25zIGZvciB0aGUgVGhpbmtwYWQgeDEzcyAoQnJpYW4g TWFzbmV5KQorLSBGZWRvcmEgY29uZmlncyBmb3IgNi40IChKdXN0aW4gTS4gRm9yYmVzKQorLSBD aGFuZ2UgYWFyY2g2NCBDT05GSUdfQVJDSF9GT1JDRV9NQVhfT1JERVIgdG8gMTAgZm9yIDRLIHBh Z2VzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBrZXJuZWwuc3BlYzogcmVtb3ZlICJSUE1fVk1MSU5V WF9IPSREZXZlbERpci92bWxpbnV4LmgiIGNvZGUgY2h1bmsgaW4gJSVpbnN0YWxsIChEZW55cyBW bGFzZW5rbykKKy0gcmVkaGF0L2NvbmZpZ3M6IGFhcmNoNjQ6IFR1cm4gb24gRGlzcGxheSBmb3Ig T25lUGx1cyA2IChFcmljIEN1cnRpbikKKy0gcmVkaGF0L2NvbmZpZ3M6IE5YUCBpLk1YOTMgcGlu Y3RybCwgY2xrLCBhbmFsb2cgdG8gZGlnaXRhbCBjb252ZXJ0ZXJzIChTdGV2ZSBCZXN0KQorLSBy ZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19TQ19HUFVDQ184MjgwWFAgZm9yIGZlZG9yYSAo QW5kcmV3IEhhbGFuZXkpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1FDT01fSVBD QyBmb3IgZmVkb3JhIChBbmRyZXcgSGFsYW5leSkKKy0gQWRkIHJ2IHN1YnBhY2thZ2UgZm9yIGtl cm5lbC10b29scyAoSm9obiBLYWN1cikgWzIxODg0NDFdCistIHJlZGhhdC9jb25maWdzOiBOWFAg aS5NWDkgZmFtaWx5IChTdGV2ZSBCZXN0KQorLSByZWRoYXQvZ2VubG9nLnB5OiBhZGQgc3VwcG9y dCB0byBsaXN0L3Byb2Nlc3MgenN0cmVhbSBKaXJhIHRpY2tldHMgKEhlcnRvbiBSLiBLcnplc2lu c2tpKQorLSByZWRoYXQ6IGZpeCBkdXBsaWNhdGUgamlyYSBpc3N1ZXMgaW4gdGhlIHJlc29sdmVz IGxpbmUgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQ6IGFkZCBzdXBwb3J0IGZvciBK aXJhIGlzc3VlcyBpbiBjaGFuZ2Vsb2cgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQv Y29uZmlnczogdHVybiBvbiBJTVg4VUxQIENDTSBDbG9jayBEcml2ZXIgKFN0ZXZlIEJlc3QpCist IHJlZGhhdDogdXBkYXRlIGZpbHRlci1tb2R1bGVzIGZzZHJ2cyBsaXN0IHRvIHJlZmVyZW5jZSBz bWIgaW5zdGVhZCBvZiBjaWZzIChQYXRyaWNrIFRhbGJlcnQpCistIFR1cm4gb2ZmIHNvbWUgZGVi dWcgb3B0aW9ucyBmb3VuZCB0byBpbXBhY3QgcGVyZm9ybWFuY2UgKEp1c3RpbiBNLiBGb3JiZXMp CistIHdpZmk6IHJ0dzg5OiBlbmFibGUgUlRMODg1MkJFIGNhcmQgaW4gUkhFTCAow43DsWlnbyBI dWd1ZXQpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgVEVHUkExODZfR1BDX0RNQSBmb3IgUkhF TCAoTWFyayBTYWx0ZXIpCistIE1vdmUgaW14OG0gY29uZmlncyBmcm9tIGZlZG9yYSB0byBjb21t b24gKE1hcmsgU2FsdGVyKQorLSByZWRoYXQvY29uZmlnczogdHVybiBvbiBscHVhcnQgc2VyaWFs IHBvcnQgc3VwcG9ydCBEcml2ZXIgKFN0ZXZlIEJlc3QpIFsyMjA4ODM0XQorLSBUdXJuIG9mZiBE RUJVR19WTSBmb3Igbm9uIGRlYnVnIEZlZG9yYSBrZXJuZWxzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBFbmFibGUgQ09ORklHX0JUIG9uIGFhcmNoNjQgKENoYXJsZXMgTWlyYWJpbGUpCistIHJlZGhh dC9jb25maWdzOiB0dXJuIG9uIENPTkZJR19NQVJWRUxMX0NOMTBLX1RBRF9QTVUgKE1pY2hhbCBT Y2htaWR0KSBbMjA0MjI0MF0KKy0gcmVkaGF0L2NvbmZpZ3M6IEZpeCBlbmFibGluZyBNQU5BIElu ZmluaWJhbmQgKEthbWFsIEhlaWIpCistIEZpeCBmaWxlIGxpc3RpbmcgZm9yIHN5bXZlcnMgaW4g dWtpIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggdXAgc29tZSBGZWRvcmEgY29uZmlnIGl0ZW1z IChKdXN0aW4gTS4gRm9yYmVzKQorLSBlbmFibGUgZWZpZmIgZm9yIE52aWRpYSAoSnVzdGluIE0u IEZvcmJlcykKKy0ga2VybmVsLnNwZWM6IHBhY2thZ2UgdW5zdHJpcHBlZCB0ZXN0X3Byb2dzLW5v X2FsdTMyIChGZWxpeCBNYXVyZXIpCistIFR1cm4gb24gTkZUX0NPTk5MSU1JVCBmb3IgRmVkb3Jh IChKdXN0aW4gTS4gRm9yYmVzKQorLSBJbmNsdWRlIHRoZSBpbmZvcm1hdGlvbiBhYm91dCBidWls dGluIHN5bWJvbHMgaW50byBrZXJuZWwtdWtpLXZpcnQgcGFja2FnZSB0b28gKFZpdGFseSBLdXpu ZXRzb3YpCistIHJlZGhhdC9jb25maWdzOiBGaXggaW5jb3JyZWN0IGNvbmZpZ3MgbG9jYXRpb24g YW5kIGNvbnRlbnQgKFZsYWRpcyBEcm9ub3YpCistIHJlZGhhdC9jb25maWdzOiB0dXJuIG9uIENP TkZJR19NQVJWRUxMX0NOMTBLX0REUl9QTVUgKE1pY2hhbCBTY2htaWR0KSBbMjA0MjI0MV0KKy0g cmVkaGF0OiBjb25maWdzOiBnZW5lcmljOiB4ODY6IERpc2FibGUgQ09ORklHX1ZJREVPX09WMjc0 MCBmb3IgeDg2IHBsYXRmb3JtIChLYXRlIEhzdWFuKQorLSBFbmFibGUgSU9fVVJJTkcgZm9yIFJI RUwgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24gSU9fVVJJTkcgZm9yIFJIRUwgaW4gcGVu ZGluZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBSZW1vdmUgZWRpdGNvbmZpZyAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQ6IGNvbmZpZ3M6IGZpeCBDT05GSUdfV0VSUk9SIHJlcGxh Y2UgaW4gYnVpbGRfY29uZmlncyAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBlbmFi bGUgTWF4aW0gTUFYNzc2MjAgUE1JQyBmb3IgUkhFTCAoTWFyayBTYWx0ZXIpCistIGtlcm5lbC5z cGVjOiBza2lwIGtlcm5lbCBtZXRhIHBhY2thZ2Ugd2hlbiBidWlsZGluZyB3aXRob3V0IHVwIChK YW4gU3RhbmNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBSRE1BX1JYRSBmb3IgUkhFTCAo S2FtYWwgSGVpYikgWzIwMjI1NzhdCistIHJlZGhhdC9jb25maWdzOiB1cGRhdGUgUlBDU0VDX0dT U19LUkI1IGNvbmZpZ3MgKFNjb3R0IE1heWhldykKKy0gcmVkaGF0L01ha2VmaWxlOiBTdXBwb3J0 IGJ1aWxkaW5nIGxpbnV4LW5leHQgKFRob3JzdGVuIExlZW1odWlzKQorLSByZWRoYXQvTWFrZWZp bGU6IHN1cHBvcnQgYnVpbGRpbmcgc3RhYmxlLXJjIHZlcnNpb25zIChUaG9yc3RlbiBMZWVtaHVp cykKKy0gcmVkaGF0L01ha2VmaWxlOiBBZGQgdGFyZ2V0IHRvIHByaW50IERJU1RSRUxFQVNFVEFH IChUaG9yc3RlbiBMZWVtaHVpcykKKy0gUmVtb3ZlIEVYUEVSVCBmcm9tIEFSQ0hfRk9SQ0VfTUFY X09SREVSIGZvciBhYXJjaDY0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZXZlcnQgIk1lcmdlIGJy YW5jaCAndW5zdHJpcHBlZC1ub19hbHUzMicgaW50byAnb3MtYnVpbGQnIiAoUGF0cmljayBUYWxi ZXJ0KQorLSBjb25maWdzOiBFbmFibGUgQ09ORklHX1BBR0VfUE9PTF9TVEFUUyBmb3IgY29tbW9u L2dlbmVyaWMgKFBhdHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05G SUdfREVMTF9XTUlfUFJJVkFDWSBmb3IgYm90aCBSSEVMIGFuZCBGZWRvcmEgKERhdmlkIEFyY2Fy aSkKKy0ga2VybmVsLnNwZWM6IHBhY2thZ2UgdW5zdHJpcHBlZCB0ZXN0X3Byb2dzLW5vX2FsdTMy IChGZWxpeCBNYXVyZXIpCistIGJwZi9zZWxmdGVzdHM6IGZpeCBicGYgc2VsZnRlc3RzIGluc3Rh bGwgKEplcm9tZSBNYXJjaGFuZCkKKy0ga2VybmVsLnNwZWM6IGFkZCBib25kaW5nIHNlbGZ0ZXN0 IChIYW5nYmluIExpdSkKKy0gQ2hhbmdlIEZPUkNFX01BWF9PUkRFUiBmb3IgcHBjNjQgdG8gYmUg OCAoSnVzdGluIE0uIEZvcmJlcykKKy0ga2VybmVsLnNwZWMudGVtcGxhdGU6IEFkZCBnbG9iYWwg Y29tcHJlc3Npb24gdmFyaWFibGVzIChQcmFyaXQgQmhhcmdhdmEpCistIGtlcm5lbC5zcGVjLnRl bXBsYXRlOiBVc2UgeHogZm9yIEtBQkkgKFByYXJpdCBCaGFyZ2F2YSkKKy0ga2VybmVsLnNwZWMu dGVtcGxhdGU6IFJlbW92ZSBnemlwIHJlbGF0ZWQgYWFyY2g2NCBjb2RlIChQcmFyaXQgQmhhcmdh dmEpCistIEFkZCBhcHBsZV9ibCB0byBmaWx0ZXItbW9kdWxlcyAoSnVzdGluIE0uIEZvcmJlcykK Ky0gQWRkIGhhbmRzaGFrZS10ZXN0IHRvIG1vZC1pbnRlbmFsLmxpc3QgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIEFkZCByZWdtYXAta3VuaXQgdG8gbW9kLWludGVybmFsLmxpc3QgKEp1c3RpbiBNLiBG b3JiZXMpCistIGNvbmZpZ3M6IHNldCBDT05GSUdfUEFHRV9QT09MX1NUQVRTIChQYXRyaWNrIFRh bGJlcnQpCistIEFkZCBhcHBsZV9ibCB0byBmZWRvcmEgbW9kdWxlX2ZpbHRlciAoSnVzdGluIE0u IEZvcmJlcykKKy0gRml4IHVwIHNvbWUgY29uZmlnIG1pc21hdGNoZXMgaW4gbmV3IEZlZG9yYSBj b25maWcgaXRlbXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBkaXNhYmxl IENPTkZJR19VU0JfTkVUX1NSOTcwMCBmb3IgYWFyY2g2NCAoSm9zZSBJZ25hY2lvIFRvcm5vcyBN YXJ0aW5leikKKy0gRml4IHVwIHRoZSBSSEVMIGNvbmZpZ3MgZm9yIHh0YWJsZXMgYW5kIGlwc2V0 IChKdXN0aW4gTS4gRm9yYmVzKQorLSBhcms6IGVuYWJsZSB3aWZpIG9uIGFhcmNoNjQgKMONw7Fp Z28gSHVndWV0KQorLSBmZWRvcmE6IHdpZmk6IGhlcm1lczogZGlzYWJsZSA4MDIuMTFiIGRyaXZl ciAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogd2lmaTogbGliZXJ0YXM6IHVzZSB0aGUgTElC RVJUQVNfVEhJTkZJUk0gZHJpdmVyIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiB3aWZpOiBk aXNhYmxlIFp5ZGFzIHZlbmRvciAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdDogZml4IHB5dGhv biBWYWx1ZUVycm9yIGluIGVycm9yIHBhdGggb2YgbWVyZ2UucHkgKENsYXJrIFdpbGxpYW1zKQor LSBmZWRvcmE6IGFybTogbWlub3IgdXBkYXRlcyAoUGV0ZXIgUm9iaW5zb24pCistIGtlcm5lbC5z cGVjOiBGaXggVUtJIG5hbWluZyB0byBjb21wbHkgd2l0aCBCTFMgKFBoaWxpcHAgUnVkbykKKy0g cmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBTdXBwcmVzcyAnZXh0cmFjdGluZyBkZWJ1ZyBp bmZvJyBub2lzZSBpbiBidWlsZCBsb2cgKFByYXJpdCBCaGFyZ2F2YSkKKy0gRmVkb3JhIDYuMyBj b25maWdzIHBhcnQgMiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJs ZSBDT05GSUdfWDg2X0tFUk5FTF9JQlQgZm9yIEZlZG9yYSBhbmQgQVJLIChKb3NoIFBvaW1ib2V1 ZikKKy0ga2VybmVsLnNwZWM6IGdjb3Y6IG1ha2UgZ2NvdiBzdWJwYWNrYWdlcyBwZXIgdmFyaWFu dCAoSmFuIFN0YW5jZWspCistIGtlcm5lbC5zcGVjOiBHZW1pbmk6IGFkZCBFcG9jaCB0byBwZXJm IGFuZCBydGxhIHN1YnBhY2thZ2VzIChKYW4gU3RhbmNlaykKKy0ga2VybmVsLnNwZWM6IEdlbWlu aTogZml4IGhlYWRlciBwcm92aWRlcyBmb3IgdXBncmFkZSBwYXRoIChKYW4gU3RhbmNlaykKKy0g cmVkaGF0OiBpbnRyb2R1Y2UgR2VtaW5pIHZlcnNpb25pbmcgKEphbiBTdGFuY2VrKQorLSByZWRo YXQ6IHNlcGFyYXRlIFJQTSB2ZXJzaW9uIGZyb20gdW5hbWUgdmVyc2lvbiAoSmFuIFN0YW5jZWsp CistIHJlZGhhdDogaW50cm9kdWNlIEdFTUlOSSBhbmQgUkhFTF9SRUJBU0VfTlVNIHZhcmlhYmxl IChKYW4gU3RhbmNlaykKKy0gaXBtaTogc3NpZl9ibWM6IEFkZCBTU0lGIEJNQyBkcml2ZXIgKFRv bnkgQ2FtdXNvKQorLSBjb21tb246IG1pbm9yIGRlLWR1cGUgb2YgcGFyYWxsZWwgcG9ydCBjb25m aWdzIChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhIDYuMyBjb25maWdzIHBhcnQgMSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gcmVkaGF0OiBjb25maWdzOiBFbmFibGUgQ09ORklHX01FTVRFU1QgdG8g ZW5hYmxlIG1lbW9yeSB0ZXN0IChLYXRlIEhzdWFuKQorLSBVcGRhdGUgRmVkb3JhIGFybSBmaWx0 ZXJzIGFmdGVyIGNvbmZpZyB1cGRhdGVzIChOaWNvbGFzIENoYXV2ZXQpCistIHJlZGhhdC9rZXJu ZWwuc3BlYy50ZW1wbGF0ZTogRml4IGtlcm5lbC10b29scy1saWJzLWRldmVsIGRlcGVuZGVuY3kg KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBmaXggdGhlIGNoZWNrIGZvciB0aGUgbiBvcHRp b24gKFBhdHJpY2sgVGFsYmVydCkKKy0gY29tbW9uOiBkZS1kdXBlIHNvbWUgb3B0aW9ucyB0aGF0 IGFyZSB0aGUgc2FtZSAoUGV0ZXIgUm9iaW5zb24pCistIGdlbmVyaWM6IHJlbW92ZSBkZWxldGVk IG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJ R19JTlRFTF9UQ0NfQ09PTElORyBmb3IgUkhFTCAoRGF2aWQgQXJjYXJpKQorLSBVcGRhdGUgRmVk b3JhIHBwYyBmaWx0ZXJzIGFmdGVyIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBVcGRhdGUgRmVkb3JhIGFhcmNoNjQgZmlsdGVycyBhZnRlciBjb25maWcgdXBkYXRlcyAoSnVz dGluIE0uIEZvcmJlcykKKy0gZmVkb3JhOiBhcm06IFVwZGF0ZXMgZm9yIDYuMyAoUGV0ZXIgUm9i aW5zb24pCistIHJlZGhhdDoga3VuaXQ6IGNsZWFudXAgTklUUk8gY29uZmlnIGFuZCBlbmFibGUg cmVzY2FsZSB0ZXN0IChOaWNvIFBhY2hlKQorLSBrZXJuZWwuc3BlYzogdXNlICUle3BhY2thZ2Vf bmFtZX0gdG8gZml4IGtlcm5lbC1kZXZlbC1tYXRjaGVkIFJlcXVpcmVzIChKYW4gU3RhbmNlaykK Ky0ga2VybmVsLnNwZWM6IHVzZSAlJXtwYWNrYWdlX25hbWV9IGFsc28gZm9yIGFiaS1zdGFibGVs aXN0IHN1YnBhY2thZ2VzIChKYW4gU3RhbmNlaykKKy0ga2VybmVsLnNwZWM6IHVzZSAlJXtwYWNr YWdlX25hbWV9IGFsc28gZm9yIHRvb2xzIHN1YnBhY2thZ2VzIChKYW4gU3RhbmNlaykKKy0gZ2Vu ZXJpYzogY29tbW9uOiBQYXJwb3J0IGFuZCBwYXJpZGUvYXRhIGNsZWFudXBzIChQZXRlciBSb2Jp bnNvbikKKy0gQ09ORklHX1NORF9TT0NfQ1M0Mkw4MyBpcyBubyBsb25nZXIgY29tbW9uIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBjb25maWdzOiBhcm06IGJyaW5nIHNvbWUgY29uZmlncyBpbiBsaW5l IHdpdGggcmhlbCBjb25maWdzIGluIGM5cyAoTWFyayBTYWx0ZXIpCistIGFybTY0L2NvbmZpZ3M6 IFB1dCBzb21lIGFybTY0IGNvbmZpZ3MgaW4gdGhlIHJpZ2h0IHBsYWNlIChNYXJrIFNhbHRlcikK Ky0gY2xlYW51cCByZW1vdmVkIFI4MTg4RVUgY29uZmlnIChQZXRlciBSb2JpbnNvbikKKy0gTWFr ZSBSSEpPQlMgY29udGFpbmVyIGZyaWVuZGx5IChEb24gWmlja3VzKQorLSBSZW1vdmUgc2NtdmVy c2lvbiBmcm9tIGtlcm5lbC5zcGVjLnRlbXBsYXRlIChEb24gWmlja3VzKQorLSByZWRoYXQvY29u ZmlnczogRW5hYmxlIENPTkZJR19TTkRfU09DX0NTNDJMODMgKE5lYWwgR29tcGEpCistIFVzZSBS SEpPQlMgZm9yIGNyZWF0ZS10YXJiYWxsIChEb24gWmlja3VzKQorLSBFbmFibGUgQ09ORklHX05F VF9TQ0hfRlFfUElFIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIE1ha2UgRmVkb3Jh IGRlYnVnIGNvbmZpZ3MgbW9yZSB1c2VmdWwgZm9yIGRlYnVnIChKdXN0aW4gTS4gRm9yYmVzKQor LSByZWRoYXQvY29uZmlnczogZW5hYmxlIE9jdGVvbiBUWDIgbmV0d29yayBkcml2ZXJzIGZvciBS SEVMIChNaWNoYWwgU2NobWlkdCkgWzIwNDA2NDNdCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1w bGF0ZTogZml4IGluc3RhbGxvbmx5cGtnIGZvciBtZXRhIHBhY2thZ2UgKEphbiBTdGFuY2VrKQor LSByZWRoYXQ6IHZlcnNpb24gdHdvIG9mIE1ha2VmaWxlLnJoZWx2ZXIgdHdlYWtzIChDbGFyayBX aWxsaWFtcykKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgQ09ORklHX0dDQ19QTFVHSU5TIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogRml4IHR5cG8g Zm9yIHByb2Nlc3NfY29uZmlncy5zaCBjYWxsIChOZWFsIEdvbXBhKQorLSByZWRoYXQvY29uZmln czogQ09ORklHX0NSWVBUT19TTTNfQVZYX1g4Nl82NCBpcyB4ODYgb25seSAoVmxhZGlzIERyb25v dikKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdfUElOQ1RSTF9NRVRFT1JMQUtFIGlu IFJIRUwgKFByYXJpdCBCaGFyZ2F2YSkKKy0gZmVkb3JhOiBlbmFibGUgbmV3IGltYWdlIHNlbnNv cnMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvc2VsZi10ZXN0OiBVcGRhdGUgc2VsZi10ZXN0 IGRhdGEgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBG aXggaGFyZGNvZGVkICJrZXJuZWwiIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdz L2dlbmVyYXRlX2FsbF9jb25maWdzLnNoOiBGaXggY29uZmlnIG5hbWluZyAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IFBhc3MgU1BFQ1BBQ0tBR0VfTkFN RSB0byBnZW5lcmF0ZV9hbGxfY29uZmlncy5zaCAoUHJhcml0IEJoYXJnYXZhKQorLSBrZXJuZWwu c3BlYy50ZW1wbGF0ZTogVXNlIFNQRUNQQUNLQUdFX05BTUUgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L01ha2VmaWxlOiBDb3B5IHNwZWMgZmlsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQ6IENoYW5nZSBQQUNLQUdFX05BTUUgdG8gU1BFQ1BBQ0tBR0VfTkFNRSAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQvY29uZmlnczogU3VwcG9ydCB0aGUgdmlydGlvX21taW8uZGV2aWNlIHBh cmFtZXRlciBpbiBGZWRvcmEgKERhdmlkIE1pY2hhZWwpCistIFJldmVydCAiTWVyZ2UgYnJhbmNo ICdzeXN0ZW1kLWJvb3QtdW5zaWduZWQnIGludG8gJ29zLWJ1aWxkJyIgKFBhdHJpY2sgVGFsYmVy dCkKKy0gcmVkaGF0L01ha2VmaWxlOiBmaXggZGVmYXVsdCB2YWx1ZXMgZm9yIGRpc3QtYnJldydz IERJU1RSTyBhbmQgRElTVCAow43DsWlnbyBIdWd1ZXQpCistIFJlbW92ZSBjYyBsaW5lcyBmcm9t IGF1dG9tYXRpYyBjb25maWdzIChEb24gWmlja3VzKQorLSBBZGQgcnRsYS1od25vaXNlIGZpbGVz IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IE1hcmsg aXQgYXMgYSBub24tZXhlY3V0YWJsZSBmaWxlIChOZWFsIEdvbXBhKQorLSBmZWRvcmE6IGFybTog RW5hYmxlIERSTV9QQU5FTF9ISU1BWF9IWDgzOTQgKEphdmllciBNYXJ0aW5leiBDYW5pbGxhcykK Ky0gcmVkaGF0L2NvbmZpZ3M6IENPTkZJR19IUF9JTE8gbG9jYXRpb24gZml4IChWbGFkaXMgRHJv bm92KQorLSByZWRoYXQ6IEZpeCBidWlsZCBmb3Iga3NlbGZ0ZXN0cyBtbSAoTmljbyBQYWNoZSkK Ky0gZml4IHRvb2xzIGJ1aWxkIGFmdGVyIHZtIHRvIG1tIHJlbmFtZSAoSnVzdGluIE0uIEZvcmJl cykKKy0gcmVkaGF0L3NwZWM6IFVwZGF0ZSBicGZ0b29sIHZlcnNpb25pbmcgc2NoZW1lIChWaWt0 b3IgTWFsaWspCistIHJlZGhhdC9jb25maWdzOiBDT05GSUdfQ1JZUFRPX1NNNF9BRVNOSV9BVlgq X1g4Nl82NCBpcyB4ODYgb25seSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQ6ICBhZGFwdCB0 byB1cHN0cmVhbSBNYWtlZmlsZSBjaGFuZ2UgKENsYXJrIFdpbGxpYW1zKQorLSByZWRoYXQ6ICBt b2RpZnkgZWZpdWtpIHNwZWNmaWxlIGNoYW5nZXMgdG8gdXNlIHZhcmlhbnRzIGNvbnZlbnRpb24g KENsYXJrIFdpbGxpYW1zKQorLSBUdXJuIG9mZiBERUJVR19JTkZPX0NPTVBSRVNTRURfWkxJQiBm b3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxh dGU6IEZpeCBSSEVMIHN5c3RlbWQtYm9vdC11bnNpZ25lZCBkZXBlbmRlbmN5IChQcmFyaXQgQmhh cmdhdmEpCistIEFkZCBoYXNodGFibGVfdGVzdCB0byBtb2QtaW50ZXJuYWwubGlzdCAoSnVzdGlu IE0uIEZvcmJlcykKKy0gQWRkIG1vcmUga3VuaXQgdGVzdHMgdG8gbW9kLWludGVybmFsLmxpc3Qg Zm9yIDYuMyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmxpcCBDT05GSUdfSTJDX0FMR09CSVQgdG8g bSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmxpcCBJMkNfQUxHT0JJVCB0byBtIHRvIGF2b2lkIG1p c21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQorLSBrZXJuZWwuc3BlYzogbW92ZSBtb2R1bGVzLmJ1 aWx0aW4gdG8ga2VybmVsLWNvcmUgKEphbiBTdGFuY2VrKQorLSBUdXJuIG9uIElETEVfSU5KRUNU IGZvciB4ODYgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZsaXAgQ09ORklHX0lETEVfSU5KRUNUIGlu IHBlbmRpbmcgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09O RklHX1Y0TF9URVNUX0RSSVZFUlMgcmVsYXRlZCBkcml2ZXJzIChFbnJpYyBCYWxsZXRibyBpIFNl cnJhKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIFVDU0lfQ0NHIHN1cHBvcnQgKERhdmlkIE1h cmxpbikKKy0gRml4IHVuZGVybGluZSBtYXJrLXVwIGFmdGVyIHRleHQgY2hhbmdlIChKdXN0aW4g TS4gRm9yYmVzKQorLSBUdXJuIG9uIENPTkZJR19YRlNfUlQgZm9yIEZlZG9yYSAoSnVzdGluIE0u IEZvcmJlcykKKy0gQ29uc29saWRhdGUgY29tbW9uIGNvbmZpZ3MgZm9yIDYuMiAoSnVzdGluIE0u IEZvcmJlcykKKy0gYWFyY2g2NDogZW5hYmxlIHpib290IChHZXJkIEhvZmZtYW5uKQorLSByZWRo YXQ6IHJlbW92ZSBkdXBsaWNhdGUgcGVuZGluZy1yaGVsIGNvbmZpZyBpdGVtcyAoUGF0cmljayBU YWxiZXJ0KQorLSBEaXNhYmxlIGZyYW1lIHBvaW50ZXJzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBy ZWRoYXQvY29uZmlnczogdXBkYXRlIHNjcmlwdHMgYW5kIGRvY3MgZm9yIGFyayAtPiByaGVsIHJl bmFtZSAoQ2xhcmsgV2lsbGlhbXMpCistIHJlZGhhdC9jb25maWdzOiByZW5hbWUgYXJrIGNvbmZp Z3MgZGlyIHRvIHJoZWwgKENsYXJrIFdpbGxpYW1zKQorLSBUdXJuIG9mZiBDT05GSUdfREVCVUdf SU5GT19DT01QUkVTU0VEX1pMSUIgZm9yIHBwYzY0bGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIGtl cm5lbC5zcGVjOiBwYWNrYWdlIHVuc3RyaXBwZWQga3NlbGZ0ZXN0cy9icGYvdGVzdF9wcm9ncyAo SmFuIFN0YW5jZWspCistIGtlcm5lbC5zcGVjOiBhbGxvdyB0byBwYWNrYWdlIHNvbWUgYmluYXJp ZXMgYXMgdW5zdHJpcHBlZCAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBNYWtlIG1l cmdlLnB5IHBvcnRhYmxlIGZvciBvbGRlciBweXRob24gKERlc25lcyBOdW5lcykKKy0gRmVkb3Jh IGNvbmZpZ3MgZm9yIDYuMiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBSZXBhaXIgRUxO IGJ1aWxkIGJyb2tlbiBieSB0aGUgcmVjZW50IFVLSSBjaGFuZ2VzIChWaXRhbHkgS3V6bmV0c292 KQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19JTkVUX0RJQUdfREVTVFJPWSAoQW5k cmVhIENsYXVkaSkKKy0gRW5hYmxlIFREWCBHdWVzdCBkcml2ZXIgKFZpdGFseSBLdXpuZXRzb3Yp CistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1BDSUVfUFRNIGdlbmVyaWNhbGx5IChD b3Jpbm5hIFZpbnNjaGVuKQorLSByZWRoYXQ6IEFkZCBzdWItUlBNIHdpdGggYSBFRkkgdW5pZmll ZCBrZXJuZWwgaW1hZ2UgZm9yIHZpcnR1YWwgbWFjaGluZXMgKFZpdGFseSBLdXpuZXRzb3YpCist IHJlZGhhdC9NYWtlZmlsZTogUmVtb3ZlIEdJVCBkZXByZWNhdGVkIG1lc3NhZ2UgKFByYXJpdCBC aGFyZ2F2YSkKKy0gUmV2ZXJ0ICJyZWRoYXQ6IGNvbmZpZ3M6IERpc2FibGUgeHRhYmxlcyBhbmQg aXBzZXQiIChQaGlsIFN1dHRlcikKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdfU0VO U09SU19MTTkwIGZvciBSSEVMIChNYXJrIFNhbHRlcikKKy0gRml4IHVwIFNRVUFTSEZTIGRlY29t cHJlc3Npb24gY29uZmlncyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGVu YWJsZSBDT05GSUdfT0NURU9OX0VQIGFzIGEgbW9kdWxlIGluIEFSSyAoTWljaGFsIFNjaG1pZHQp IFsyMDQxOTkwXQorLSByZWRoYXQ6IGlnbm9yZSBycG1pbnNwZWN0IHJ1bnBhdGggcmVwb3J0IG9u IHVyYW5kb21fcmVhZCBzZWxmdGVzdCBiaW5hcmllcyAoSGVydG9uIFIuIEtyemVzaW5za2kpCist IGtlcm5lbC5zcGVjOiBhZGQgbGx2bS1kZXZlbCBidWlsZCByZXF1aXJlbWVudCAoU2NvdHQgV2Vh dmVyKQorLSBVcGRhdGUgc2VsZi10ZXN0IGRhdGEgdG8gbm90IGV4cGVjdCBkZWJ1Z2J1aWxkc2Vu YWJsZWQgMCAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvZmYgZm9yY2VkIGRlYnVnIGJ1aWxk cyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBkZWJ1ZyBidWlsZHMgZm9yIGFhcmNoNjQg RmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogIG1vZGlmeSBtZXJn ZS5weSB0byBtYXRjaCBvbGQgb3ZlcnJpZGVzIGlucHV0IChDbGFyayBXaWxsaWFtcykKKy0gcmVk aGF0OiAgZml4dXAgcHlsaW50IGNvbXBsYWludHMgKENsYXJrIFdpbGxpYW1zKQorLSByZWRoYXQ6 IHJlbW92ZSBtZXJnZS5wbCBhbmQgcmVmZXJlbmNlcyB0byBpdCAoQ2xhcmsgV2lsbGlhbXMpCist IHJlZGhhdDogdXBkYXRlIG1lcmdlLnB5IHRvIGhhbmRsZSBtZXJnZS5wbCBjb3JuZXIgY2FzZXMg KENsYXJrIFdpbGxpYW1zKQorLSBSZXZlcnQgInJlZGhhdDogZml4IGVsZiBnb3QgaGFyZGVuaW5n IGZvciB2bSB0b29scyIgKERvbiBaaWNrdXMpCistIFVwZGF0ZSByZWJhc2Ugbm90ZXMgZm9yIEZl ZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gVXBkYXRlIENPTkZJR19MT0NLREVQX0NIQUlOU19C SVRTIHRvIDE5IChjbXVyZikKKy0gcmVkaGF0L2NvbmZpZ3M6IFR1cm4gb24gQ09ORklHX1NQSV9U RUdSQTIxMF9RVUFEIGZvciBSSEVMIChNYXJrIFNhbHRlcikKKy0gYXJrOiBhYXJjaDY0OiBkcm9w IENPTkZJR19TTUM5MTFYIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBjbGVhbnVwIGFuZCBkZS1k dXBlIENEUk9NX1BLVENEVkQgb3B0aW9ucy4gKFBldGVyIFJvYmluc29uKQorLSBhbGw6IHJlbW92 ZSBDUllQVE9fR0YxMjhNVUwgKFBldGVyIFJvYmluc29uKQorLSBhbGw6IGNsZWFudXAgVUVGSSBv cHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBhcm02NDogRW5hYmxlIEFtcGVyZSBB bHRyYSBTTXBybyBIYXJkd2FyZSBNb25pdG9yaW5nIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3Jh OiBlbmFibGUgU1RBQ0tQUk9URUNUT1JfU1RST05HIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3Jh OiBlbmFibGUgU1RBQ0tQUk9URUNUT1Igb24gYXJtIHBsYXRmb3JtcyAoUGV0ZXIgUm9iaW5zb24p CistIHJlZGhhdC9zZWxmLXRlc3Q6IFVwZGF0ZSBkYXRhIHdpdGggRU5BQkxFX1dFUlJPUiAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGUudmFyaWFibGVzOiBBZGQgRU5BQkxFX1dF UlJPUiAoUHJhcml0IEJoYXJnYXZhKQorLSBtYWtlZmlsZTogQWRkIC1XZXJyb3Igc3VwcG9ydCBm b3IgUkhFTCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGUudmFyaWFibGVzOiBS ZW1vdmUgbWVudGlvbiBvZiBNYWtlZmlsZS5yaHBrZyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQvTWFrZWZpbGUudmFyaWFibGVzOiBBbHBoYWJldGl6ZSB2YXJpYWJsZXMgKFByYXJpdCBCaGFy Z2F2YSkKKy0gZ2l0bGFiLWNpOiB1c2UgQ0kgdGVtcGxhdGVzIGZyb20gcHJvZHVjdGlvbiBicmFu Y2ggKE1pY2hhZWwgSG9mbWFubikKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBGaXgg aW50ZXJuYWwgIkZpbGUgbGlzdGVkIHR3aWNlIiBlcnJvcnMgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0OiBSZW1vdmUgc3RhbGUgLnRtcF92ZXJzaW9ucyBjb2RlIGFuZCBjb21tZW50cyAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IEZpeCB2bWxpbnV4 X2RlY29tcHJlc3NvciBvbiAhczM5MHggKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2tlcm5l bC5zcGVjLnRlbXBsYXRlOiBSZW1vdmUgdW5uZWNlc3Nhcnkgb3V0cHV0IGZyb20gcGF0aGZpeC5w eSAoUHJhcml0IEJoYXJnYXZhKQorLSBNb2R1bGFyaXplIENPTkZJR19BUk1fQ09SRVNJR0hUX1BN VV9BUkNIX1NZU1RFTV9QTVUgKE1hcmsgU2FsdGVyKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVt cGxhdGU6IFBhcmFsbGVsaXplIGNvbXByZXNzaW9uIChQcmFyaXQgQmhhcmdhdmEpCistIGNvbmZp ZzogRW5hYmxlIFNlY3VyaXR5IFBhdGggKFJpY2FyZG8gUm9iYWluYSkKKy0gcmVkaGF0L3NlbGYt dGVzdC9kYXRhOiBSZWdlbmVyYXRlIHNlbGYtdGVzdCBkYXRhIGZvciBtYWtlIGNoYW5nZSAoUHJh cml0IEJoYXJnYXZhKQorLSBVcGRhdGUgbW9kdWxlIGZpbHRlcnMgZm9yIG52bWVtX3UtYm9vdC1l bnYgKEp1c3RpbiBNLiBGb3JiZXMpCistIGZlZG9yYTogVXBkYXRlcyBmb3IgNi4yIG1lcmdlIChQ ZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBVcGRhdGVzIGZvciA2LjEgbWVyZ2UgKFBldGVyIFJv Ymluc29uKQorLSBtb2R1bGVzLWNvcmU6IHVzZSAlJXBvc3R0cmFucyAoR2VyZCBIb2ZmbWFubikK Ky0gc3BsaXQgc3ViLXJwbSBrZXJuZWwtbW9kdWxlcy1jb3JlIGZyb20ga2VybmVsLWNvcmUgKEdl cmQgSG9mZm1hbm4pCistIFR1cm4gb2ZmIENPTkZJR19NVEtfVDdYWCBmb3IgUzM5MHggKEp1c3Rp biBNLiBGb3JiZXMpCistIENJOiBhZGQgdmFyaWFibGUgZm9yIHZhcmlhbnQgaGFuZGxpbmcgKFZl cm9uaWthIEthYmF0b3ZhKQorLSBGaXggdXAgY29uZmlncyB3aXRoIFNORF9TT0NfTkFVODMxNSBt aXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0gQ0k6IERvIGEgZnVsbCBidWlsZCBmb3Igbm9u LWJvdCBydW5zIChWZXJvbmlrYSBLYWJhdG92YSkKKy0gRml4IHVwIGNvbmZpZ3Mgd2l0aCBTTkRf U09DX05BVTgzMTUgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIGtlcm5lbC9yaF9tZXNz YWdlcy5jOiBnY2MxMiB3YXJuaW5nIG9uIHJlZHVuZGFudCBOVUxMIHRlc3QgKEVyaWMgQ2hhbnVk ZXQpIFsyMTQyNjU4XQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENSWVBUT19DVVJWRTI1NTE5 IGluIGFyayAoUHJhcml0IEJoYXJnYXZhKQorLSBnZW5lcmFsOiBhcm06IGNsZWFudXAgQVNQRUVE IG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogQUxTQSAtIGNsZWFu dXBzIGZvciB0aGUgQU1EIFBpbmsgU2FyZGluZSBETUlDIGRyaXZlciAoSmFyb3NsYXYgS3lzZWxh KQorLSByZWRoYXQvZG9jczogQWRkIEZBUSBlbnRyeSBmb3IgYm9vdGluZyBiZXR3ZWVuIEZlZG9y YSAmIEVMTi9SSEVMIGtlcm5lbHMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gc3BlYzogYWRkIG1pc3Np bmcgQnVpbGRSZXF1aXJlczogcHl0aG9uMy1kb2N1dGlscyBmb3IgdG9vbHMgKE9uZHJlaiBNb3Nu YWNlaykKKy0gY29uZmlnOiBlbmFibGUgUkNVX1RSQUNFIGZvciBkZWJ1ZyBrZXJuZWxzIChXYW5k ZXIgTGFpcnNvbiBDb3N0YSkKKy0gQWRkIHNpcGhhc2hfa3VuaXQgYW5kIHN0cnNjcHlfa3VuaXQg dG8gbW9kLWludGVybmFsLmxpc3QgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBkcm1fa3VuaXRf aGVscGVycyB0byBtb2QtaW50ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IHVw IGNvbmZpZ3MgZm9yIEZlZG9yYSBzbyB3ZSBkb24ndCBoYXZlIGEgbWlzbWF0Y2ggKEp1c3RpbiBN LiBGb3JiZXMpCistIFR1cm4gb24gQ09ORklHX1NRVUFTSEZTX0RFQ09NUF9TSU5HTEUgaW4gcGVu ZGluZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBG aXggY3B1cG93ZXIgZmlsZSBlcnJvciAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmln czogYWFyaGM2NDogY2xlYW4gdXAgc29tZSBlcnJhdHVtIGNvbmZpZ3MgKE1hcmsgU2FsdGVyKQor LSBNb3JlIEZlZG9yYSBjb25maWdzIGZvciA2LjEgYXMgZGVwcyB3ZXJlIHN3aXRjaGVkIG9uIChK dXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogbWFrZSBTT0NfVEVHUkFfQ0JCIGEg bW9kdWxlIChNYXJrIFNhbHRlcikKKy0gcmVkaGF0L2NvbmZpZ3M6IGFhcmNoNjQ6IHJlb3JnYW5p emUgdGVncmEgY29uZmlncyB0byBjb21tb24gZGlyIChNYXJrIFNhbHRlcikKKy0gRW5mb3JjZXMg YnVpbGRyb290IGlmIGNyb3NzX2FybSAoTmljb2xhcyBDaGF1dmV0KQorLSBIYW5kbGUgYXV0b21h dGVkIGNhc2Ugd2hlbiBjb25maWcgZ2VuZXJhdGlvbiB3b3JrcyBjb3JyZWN0bHkgKERvbiBaaWNr dXMpCistIFR1cm4gb2ZmIENPTkZJR19DUllQVE9fQVJJQV9BRVNOSV9BVlhfWDg2XzY0IChKdXN0 aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9mZiBDT05GSUdfRUZJX1pCT09UIGFzIGl0IG1ha2VzIENL SSBjaG9rZSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIGZvciA2 LjEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogUmVtb3ZlIGNwdXBvd2VyIGZpbGVzIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzOiB1cGRhdGUgQ1hMLXJlbGF0ZWQgb3B0 aW9ucyB0byBtYXRjaCB3aGF0IFJIRUwgd2lsbCB1c2UgKEpvaG4gVy4gTGludmlsbGUpCistIENs ZWFuIHVwIHRoZSBjb25maWcgZm9yIHRoZSBUZWdyYTE4NiB0aW1lciAoQWwgU3RvbmUpCistIHJl ZGhhdC9jb25maWdzOiBtb3ZlIENPTkZJR19URUdSQTE4Nl9HUENfRE1BIGNvbmZpZyAoTWFyayBT YWx0ZXIpCistIENoZWNrIGZvciBrZXJuZWwgY29uZmlnIGdpdC1wdXNoIGZhaWx1cmVzIChEb24g Wmlja3VzKQorLSByZWRoYXQ6IGdlbmxvZy5zaCBmYWlsdXJlcyBzaG91bGQgaW50ZXJydXB0IHRo ZSByZWNpcGUgKFBhdHJpY2sgVGFsYmVydCkKKy0gVHVybiBDT05GSUdfR05TUyBiYWNrIG9uIGZv ciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09O RklHX0dOU1MgZm9yIFJIRUwgKE1pY2hhbCBTY2htaWR0KQorLSBUdXJuIG9mZiBOVk1FTV9VX0JP T1RfRU5WIGZvciBmZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIENvbnNvbGlkYXRlIG1hdGNo aW5nIGZlZG9yYSBhbmQgYXJrIGVudHJpZXMgdG8gY29tbW9uIChKdXN0aW4gTS4gRm9yYmVzKQor LSBFbXB0eSBvdXQgcmVkaGF0L2NvbmZpZ3MvY29tbW9uIChKdXN0aW4gTS4gRm9yYmVzKQorLSBB ZGp1c3QgcGF0aCB0byBjb21wcmVzc2VkIHZtbGludXgga2VybmVsIGltYWdlIGZvciBzMzkweCAo SnVzdGluIE0uIEZvcmJlcykgWzIxNDkyNzNdCistIEZlZG9yYSBjb25maWcgdXBkYXRlcyBmb3Ig Ni4xIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGdlbmxvZy5zaCBzaG91bGQgZXhwZWN0 IGdlbmxvZy5weSBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkgKFBhdHJpY2sgVGFsYmVydCkKKy0g cmVkaGF0L2NvbmZpZ3M6IGNvbnNvbGlkYXRlIENPTkZJR19URVNUX0xJVkVQQVRDSD1tIChKb2Ug TGF3cmVuY2UpCistIHJlZGhhdC9jb25maWdzOiBlbmFibGUgQ09ORklHX1RFU1RfTElWRVBBVENI PW0gZm9yIHMzOTB4IChKdWxpYSBEZW5oYW0pCistIFJldmVydCAiTWVyZ2UgYnJhbmNoICdhcmst bWFrZS1oZWxwJyBpbnRvICdvcy1idWlsZCciIChTY290dCBXZWF2ZXIpCistIFJlbW92ZSByZWNv bW1lbmRhdGlvbiB0byB1c2UgJ2NvbW1vbicgZm9yIGNvbmZpZyBjaGFuZ2VzLiAoRG9uIFppY2t1 cykKKy0gVXBkYXRlIGNvbmZpZyB0byBhZGQgaTNjIHN1cHBvcnQgZm9yIEFBcmNoNjQgKE1hcmsg Q2hhcmxlYm9pcykKKy0gcmVkaGF0OiBNb3ZlIGNyb3NzLWNvbXBpbGUgc2NyaXB0cyBpbnRvIHRo ZWlyIG93biBkaXJlY3RvcnkgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBNb3ZlIHlhbWwg ZmlsZXMgaW50byB0aGVpciBvd24gZGlyZWN0b3J5IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhh dDogTW92ZSB1cGRhdGVfc2NyaXB0cy5zaCBpbnRvIHJlZGhhdC9zY3JpcHRzIChQcmFyaXQgQmhh cmdhdmEpCistIHJlZGhhdDogTW92ZSBrZXJuZWwtdG9vbHMgc2NyaXB0cyBpbnRvIHRoZWlyIG93 biBkaXJlY3RvcnkgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBNb3ZlIGdlbi0qIHNjcmlw dHMgaW50byB0aGVpciBvd24gZGlyZWN0b3J5IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDog TW92ZSBtb2QtKiBzY3JpcHRzIGludG8gdGhlaXIgb3duIGRpcmVjdG9yeSAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IEZpeCBSSEpPQlMgZ3JlcCB3YXJuaW5nIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdDogRm9yY2UgcmVtb3ZlIHRtcCBmaWxlIChQcmFyaXQgQmhhcmdh dmEpCistIHJlZGhhdC9jb25maWdzOiBBTFNBIC0gY2xlYW51cHMgZm9yIHRoZSBDZW50T1MgOS4y IHVwZGF0ZSAoSmFyb3NsYXYgS3lzZWxhKQorLSBDSTogVXNlIENLSSBjb250YWluZXIgaW1hZ2Vz IGZyb20gcXVheS5pbyAoVmVyb25pa2EgS2FiYXRvdmEpCistIHJlZGhhdDogY2xlYW4gdXAgdGhl IHBhcnRpYWwta2djb3Ytc25pcC5jb25maWcgZmlsZSAoUGF0cmljayBUYWxiZXJ0KQorLSByZWRo YXQ6IGF2b2lkIHBpY2tpbmcgdXAgc3RyYXkgZWRpdG9yIGJhY2t1cHMgd2hlbiBwcm9jZXNzaW5n IGNvbmZpZ3MgKENsYXJrIFdpbGxpYW1zKQorLSBDSTogUmVtb3ZlIG9sZCBjb25maWdzIChWZXJv bmlrYSBLYWJhdG92YSkKKy0gcmVkaGF0OiBvdmVycmlkZSBgbWFrZSBoZWxwYCB0byBpbmNsdWRl IGRpc3QtaGVscCAoSm9uYXRoYW4gVG9wcGlucykKKy0gcmVkaGF0OiBtYWtlIFJIVEVTVCBzdHJp Y3RlciAoSm9uYXRoYW4gVG9wcGlucykKKy0gcmVkaGF0OiBFbmFibGUgc3VwcG9ydCBmb3IgU04y MjAxIHN5c3RlbSAoSXZhbiBWZWNlcmEpCistIHJlZGhhdC9kb2NzL2luZGV4LnJzdDogQWRkIEZM QVZPUiBpbmZvcm1hdGlvbiB0byBnZW5lcmF0ZSBjb25maWdzIGZvciBsb2NhbCBidWlsZHMgKEVu cmljIEJhbGxldGJvIGkgU2VycmEpCistIHJlZGhhdDogZml4IHNlbGZ0ZXN0IGdpdCBjb21tYW5k IHNvIGl0IHBpY2tzIHRoZSByaWdodCBjb21taXQgKFBhdHJpY2sgVGFsYmVydCkKKy0gcmVkaGF0 L2NvbmZpZ3M6IGVuYWJsZSBIUF9XQVRDSERPRyBmb3IgYWFyY2g2NCAoTWFyayBTYWx0ZXIpCist IHJlZGhhdDogZGlzYWJsZSBLZmVuY2UgS3VuaXQgVGVzdCAoTmljbyBQYWNoZSkKKy0gY29uZmln czogZW5hYmxlIENPTkZJR19MUlVfR0VOX0VOQUJMRUQgZXZlcnl3aGVyZSAoUGF0cmljayBUYWxi ZXJ0KQorLSByZWRoYXQ6IEVuYWJsZSBXV0FOIGZlYXR1cmUgYW5kIHN1cHBvcnQgZm9yIEludGVs LCBRdWFsY29tbSBhbmQgTWVkaWF0ZWsgZGV2aWNlcyAoSm9zZSBJZ25hY2lvIFRvcm5vcyBNYXJ0 aW5leikKKy0gVHVybiBvbiBkbG4yIHN1cHBvcnQgKFJIQlogMjExMDM3MikgKEp1c3RpbiBNLiBG b3JiZXMpCistIEVuYWJsZSBjb25maWdzIGZvciBpbXg4bSBQSFlzIChBbCBTdG9uZSkKKy0gY29u Zmlncy9mZWRvcmE6IEJ1aWxkIHNvbWUgU0M3MTgwIGNsb2NrIGNvbnRyb2xsZXJzIGFzIG1vZHVs ZXMgKEphdmllciBNYXJ0aW5leiBDYW5pbGxhcykKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUg ZmJkZXYgZHJpdmVycyBhbmQgdXNlIHNpbXBsZWRybSBldmVyeXdoZXJlIChKYXZpZXIgTWFydGlu ZXogQ2FuaWxsYXMpIFsxOTg2MjIzXQorLSByZWRoYXQ6IGZpeCB0aGUgYnJhbmNoIHdlIHB1bGwg ZnJvbSB0aGUgZG9jdW1lbnRhdGlvbiB0cmVlIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVk aGF0L2NvbmZpZ3M6IGNoYW5nZSBzbyB3YXRjaGRvZyBpcyBtb2R1bGUgdmVyc3VzIGJ1aWx0aW4g KFN0ZXZlIEJlc3QpCistIHJlZGhhdC9jb25maWdzOiBtb3ZlIENPTkZJR19BQ1BJX1ZJREVPIHRv IGNvbW1vbi9nZW5lcmljIChNYXJrIExhbmdzZG9yZikKKy0gZW5hYmxlIGlteDh4bSBJMkMgY29u ZmlncyBwcm9wZXJseSAoQWwgU3RvbmUpCistIGNvbmZpZ3MvZmVkb3JhOiBFbmFibGUgYSBmZXcg bW9yZSBkcml2ZXJzIG5lZWRlZCBieSB0aGUgSFAgWDIgQ2hyb21lYm9vayAoSmF2aWVyIE1hcnRp bmV6IENhbmlsbGFzKQorLSBlbmFibGUgdGhlIHJ0Yy1ydjg4MDMgZHJpdmVyIG9uIFJIRUwgYW5k IEZlZG9yYSAoRGF2aWQgQXJjYXJpKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBCVUlMRF9T Q1JBVENIX1RBUkdFVCAoUHJhcml0IEJoYXJnYXZhKQorLSBjb25maWdzOiBtb3ZlIENPTkZJR19J TlRFTF9URFhfR1VFU1QgdG8gY29tbW9uIGRpcmVjdG9yeSAoV2FuZGVyIExhaXJzb24gQ29zdGEp CistIHJlZGhhdC9NYWtlZmlsZTogVXNlIG5ldyBCVUlMRF9UQVJHRVQgZm9yIFJIRUwgZGlzdFtn XS1icmV3IHRhcmdldCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQ6IG1ldGhvZC5weTogY2hh bmdlIHRoZSBvdXRwdXQgbG9vcCB0byB1c2UgJ3ZhbHVlcycgbWV0aG9kIChQYXRyaWNrIFRhbGJl cnQpCistIHJlZGhhdDogdXNlICd1cGRhdGUnIG1ldGhvZCBpbiBtZXJnZS5weSAoUGF0cmljayBU YWxiZXJ0KQorLSByZWRoYXQ6IFVzZSBhIGNvbnRleHQgbWFuYWdlciBpbiBtZXJnZS5weSBmb3Ig b3BlbmluZyB0aGUgY29uZmlnIGZpbGUgZm9yIHJlYWRpbmcgKFBhdHJpY2sgVGFsYmVydCkKKy0g cmVkaGF0OiBhdXRvbWF0aWNhbGx5IHN0cmlwIG5ld2xpbmVzIGluIG1lcmdlLnB5IChDbGFyayBX aWxsaWFtcykKKy0gcmVkaGF0OiBweXRob24gcmVwbGFjZW1lbnQgZm9yIG1lcmdlLnBsIChDbGFy ayBXaWxsaWFtcykKKy0gcmVkaGF0L2RvY3M6IFVwZGF0ZSB3aXRoIERJU1RMT0NBTFZFUlNJT04g KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBSZW5hbWUgTE9DQUxWRVJTSU9O IHRvIERJU1RMT0NBTFZFUlNJT04gKEFraWhpa28gT2Rha2kpCistIEFkanVzdCBGSVBTIG1vZHVs ZSBuYW1lIGluIFJIRUwgKFZsYWRpcyBEcm9ub3YpCistIHNwZWM6IHByZXZlbnQgZ2l0IGFwcGx5 IGZyb20gc2VhcmNoaW5nIGZvciB0aGUgLmdpdCBkaXJlY3RvcnkgKE9uZHJlaiBNb3NuYWNlaykK Ky0gcmVkaGF0OiBSZW1vdmUgcGFyYWxsZWxfeHouc2ggKFByYXJpdCBCaGFyZ2F2YSkKKy0gVHVy biBvbiBNdWx0aS1HZW4gTFJVIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBr YXNhbl90ZXN0IHRvIG1vZC1pbnRlcm5hbC5saXN0IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRo YXQvTWFrZWZpbGUudmFyaWFibGVzOiBGaXggdHlwbyB3aXRoIFJIRElTVEdJVF9UTVAgKFByYXJp dCBCaGFyZ2F2YSkKKy0gc3BlYzogZml4IHBhdGggdG8gYGluc3RhbGxpbmdfY29yZWAgc3RhbXAg ZmlsZSBmb3Igc3VicGFja2FnZXMgKEpvbmF0aGFuIExlYm9uKQorLSBSZW1vdmUgdW51c2VkIGNp IHNjcmlwdHMgKERvbiBaaWNrdXMpCistIFJlbmFtZSByZW5hbWUgRk9SQ0VfTUFYX1pPTkVPUkRF UiB0byBBUkNIX0ZPUkNFX01BWF9PUkRFUiBpbiBjb25maWdzIChKdXN0aW4gTS4gRm9yYmVzKQor LSByZWRoYXQ6IEFkZCBuZXcgZm9ydGlmeV9rdW5pdCAmIGlzX3NpZ25lZF90eXBlX2t1bml0IHRv IG1vZC1pbnRlcm5hbC5saXN0IChQYXRyaWNrIFRhbGJlcnQpCistIFJlbmFtZSByZW5hbWUgRk9S Q0VfTUFYX1pPTkVPUkRFUiB0byBBUkNIX0ZPUkNFX01BWF9PUkRFUiBpbiBwZW5kaW5nIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBBZGQgYWNwaSB2aWRlbyB0byB0aGUgZmlsdGVyX21vZHVsZXMuc2gg Zm9yIHJoZWwgKEp1c3RpbiBNLiBGb3JiZXMpCistIENoYW5nZSBhY3BpX2J1c19nZXRfYWNwaV9k ZXZpY2UgdG8gYWNwaV9nZXRfYWNwaV9kZXYgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24g QUNQSV9WSURFTyBmb3IgYXJtIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIENPTkZJR19Q UklNRV9OVU1CRVJTIGFzIGEgbW9kdWxlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgbmV3IGRy bSBrdW5pdCB0ZXN0cyB0byBtb2QtaW50ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0g cmVkaGF0OiBmaXggZWxmIGdvdCBoYXJkZW5pbmcgZm9yIHZtIHRvb2xzIChGcmFudGlzZWsgSHJi YXRhKQorLSBrZXJuZWwuc3BlYy50ZW1wbGF0ZTogcmVtb3ZlIHNvbWUgdGVtcG9yYXJ5IGZpbGVz IGVhcmx5IChPbmRyZWogTW9zbmFjZWspCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBhdm9pZCBr ZWVwaW5nIHR3byBjb3BpZXMgb2Ygdm1saW51eCAoT25kcmVqIE1vc25hY2VrKQorLSBBZGQgZm9y dGlmeV9rdW5pdCB0byBtb2QtaW50ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRk IG1vZHVsZSBmaWx0ZXJzIGZvciBGZWRvcmEgYXMgYWNwaSB2aWRlbyBoYXMgbmV3IGRlcHMgKEp1 c3RpbiBNLiBGb3JiZXMpCistIE9uZSBtb3JlIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQor LSBGaXggdXAgcGVuZGluZyBmb3IgbWlzbWF0Y2hlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRm9y Z290IHRvbyByZW1vdmUgdGhpcyBmcm9tIHBlbmRpbmcsIGl0IGlzIHNldCBwcm9wZXJseSBpbiBh cmsgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9NYWtlZmlsZTogQWRkIERJU1QgdG8gZ2l0 IHRhZ3MgZm9yIFJIRUwgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3M6IE1vdmUg Q09ORklHX0FSTV9TTU1VX1FDT01fREVCVUcgdG8gY29tbW9uIChKZXJyeSBTbml0c2VsYWFyKQor LSBDb21tb24gY29uZmlnIGNsZWFudXAgZm9yIDYuMCAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWxs b3cgc2VsZnRlc3RzIHRvIGZhaWwgd2l0aG91dCBraWxsaW5nIHRoZSBidWlsZCAoSnVzdGluIE0u IEZvcmJlcykKKy0gcmVkaGF0OiBSZW1vdmUgcmVkaGF0L01ha2VmaWxlLnJocGtnIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBSSERJU1RHSVRfQ0FDSEUgYW5kIFJI RElTVEdJVF9UTVAgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlLnJocGtnOiBS ZW1vdmUgUkhESVNUR0lUX1VTRVIgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxl OiBNb3ZlIFJIUEtHX0JJTiB0byByZWRoYXQvTWFrZWZpbGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0g Y29tbW9uOiBjbGVhbiB1cCBBbmRyb2lkIG9wdGlvbiB3aXRoIHJlbW92YWwgb2YgQ09ORklHX0FO RFJPSUQgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogUmVtb3ZlIHg4Nl82NCBm cm9tIHByaW9yaXR5IGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL3Bl bmRpbmctYXJrOiBSZW1vdmUgeDg2XzY0IGRpcmVjdG9yeSAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQvY29uZmlncy9wZW5kaW5nLWZlZG9yYTogUmVtb3ZlIHg4Nl82NCBkaXJlY3RvcnkgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3MvZmVkb3JhOiBSZW1vdmUgeDg2XzY0IGRp cmVjdG9yeSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmlncy9jb21tb246IFJlbW92 ZSB4ODZfNjQgZGlyZWN0b3J5IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL2Fy azogUmVtb3ZlIHg4Nl82NCBkaXJlY3RvcnkgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2Nv bmZpZ3MvY3VzdG9tLW92ZXJyaWRlczogUmVtb3ZlIHg4Nl82NCBkaXJlY3RvcnkgKFByYXJpdCBC aGFyZ2F2YSkKKy0gY29uZmlnczogdXNlIGNvbW1vbiBDT05GSUdfQVJNNjRfU01FIGZvciBhcmsg YW5kIGZlZG9yYSAoTWFyayBTYWx0ZXIpCistIHJlZGhhdC9jb25maWdzOiBBZGQgYSB3YXJuaW5n IG1lc3NhZ2UgdG8gcHJpb3JpdHkuY29tbW9uIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9j b25maWdzOiBFbmFibGUgSU5JVF9TVEFDS19BTExfWkVSTyBmb3IgRmVkb3JhIChNaWtvIExhcnNz b24pCistIHJlZGhhdDogU2V0IENPTkZJR19NQVhMSU5FQVJfR1BIWSB0byA9bSAoUGV0ciBPcm9z KQorLSByZWRoYXQvY29uZmlncyBlbmFibGUgQ09ORklHX0lOVEVMX0lGUyAoRGF2aWQgQXJjYXJp KQorLSByZWRoYXQ6IFJlbW92ZSBmaWx0ZXItaTY4Ni5zaC5yaGVsIChQcmFyaXQgQmhhcmdhdmEp CistIHJlZGhhdC9NYWtlZmlsZTogU2V0IFBBVENITElTVF9VUkwgdG8gbm9uZSBmb3IgUkhFTC9j czkgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiByZW1vdmUgR0xfRElTVEdJVF9VU0VSLCBS SERJU1RHSVQgYW5kIHVuaWZ5IGRpc3QtZ2l0IGNsb25pbmcgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L01ha2VmaWxlLnZhcmlhYmxlczogQWRkIEFERF9DT01NSVRJRF9UT19WRVJTSU9OIChQ cmFyaXQgQmhhcmdhdmEpCistIGtlcm5lbC5zcGVjOiBkaXNhYmxlIHZtbGludXguaCBnZW5lcmF0 aW9uIGZvciBzMzkwIHpmY3BkdW1wIGNvbmZpZyAoUHJhcml0IEJoYXJnYXZhKQorLSBwZXJmOiBS ZXF1aXJlIGxpYmJwZiAwLjYuMCBvciBuZXdlciAoUHJhcml0IEJoYXJnYXZhKQorLSBrYWJpOiBh ZGQgc3RhYmxlbGlzdCBoZWxwZXJzIChQcmFyaXQgQmhhcmdhdmEpCistIE1ha2VmaWxlOiBhZGQg a2FiaSB0YXJnZXRzIChQcmFyaXQgQmhhcmdhdmEpCistIGthYmk6IGFkZCBzdXBwb3J0IGZvciBz eW1ib2wgbmFtZXNwYWNlcyBpbnRvIGNoZWNrLWthYmkgKFByYXJpdCBCaGFyZ2F2YSkKKy0ga2Fi aTogaWdub3JlIG5ldyBzdGFibGVsaXN0IG1ldGFkYXRhIGluIHNob3cta2FiaSAoUHJhcml0IEJo YXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IGFkZCBkaXN0LWFzc2VydC10cmVlLWNsZWFuIHRh cmdldCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IFNw ZWNpZnkgdm1saW51eC5oIHBhdGggd2hlbiBidWlsZGluZyBzYW1wbGVzL2JwZiAoUHJhcml0IEJo YXJnYXZhKSBbMjA0MTM2NV0KKy0gc3BlYzogRml4IHNlcGFyYXRlIHRvb2xzIGJ1aWxkIChQcmFy aXQgQmhhcmdhdmEpIFsyMDU0NTc5XQorLSByZWRoYXQvc2NyaXB0czogVXBkYXRlIG1lcmdlLXN1 YnRyZWVzLnNoIHdpdGggbmV3IHN1YnRyZWUgbG9jYXRpb24gKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBlbmFibGUgZGVwZW5kZW5jaWVzIGdlbmVyYXRp b24gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBidWlsZCBhbmQgaW5jbHVkZSBtZW1mZCB0 byBrZXJuZWwtc2VsZnRlc3RzLWludGVybmFsIChQcmFyaXQgQmhhcmdhdmEpIFsyMDI3NTA2XQor LSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IExpbmsgcGVyZiB3aXRoIC0tZXhwb3J0LWR5 bmFtaWMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBrZXJuZWwuc3BlYzogc2VsZnRlc3Rz OiBhYm9ydCBvbiBidWlsZCBmYWlsdXJlIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogY29u ZmlnczogbW92ZSBDT05GSUdfU0VSSUFMX01VTFRJX0lOU1RBTlRJQVRFPW0gc2V0dGluZ3MgdG8g Y29tbW9uL3g4NiAoSmFyb3NsYXYgS3lzZWxhKQorLSBjb25maWdzOiBlbmFibGUgQ09ORklHX0hQ X0lMTyBmb3IgYWFyY2g2NCAoTWFyayBTYWx0ZXIpCistIGFsbDogY2xlYW51cCBkZWxsIGNvbmZp ZyBvcHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0OiBJbmNsdWRlIG1vcmUga3VuaXQg dGVzdHMgKE5pY28gUGFjaGUpCistIGNvbW1vbjogc29tZSBtaW5vciBjbGVhbnVwcy9kZS1kdXBl IChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBlbmFibGUgSU5URUdSSVRZX01BQ0hJTkVfS0VZ UklORyBvbiBhbGwgY29uZmlndXJhaXRvbnMgKFBldGVyIFJvYmluc29uKQorLSBGZWRvcmEgNi4w IGNvbmZpZ3MgdXBkYXRlIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvc2VsZi10ZXN0OiBJ Z25vcmUgLnJocGtnLm1rIGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdz OiBFbmFibGUgQ09ORklHX1BSSU5US19JTkRFWCBvbiBGZWRvcmEgKFByYXJpdCBCaGFyZ2F2YSkK Ky0gcmVkaGF0L2NvbmZpZ3M6IENsZWFudXAgQ09ORklHX1g4Nl9LRVJORUxfSUJUIChQcmFyaXQg QmhhcmdhdmEpCistIEZpeCB1cCBTTkRfQ1RMIGRlYnVnIG9wdGlvbnMgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHJlZGhhdDogY3JlYXRlIC9ib290IHN5bXZlcnMgbGluayBpZiBpdCBkb2Vzbid0IGV4 aXN0IChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiByZW1vdmUgZHVwbGljYXRlIGt1bml0IHRlc3Rz IGluIG1vZC1pbnRlcm5hbC5saXN0IChOaWNvIFBhY2hlKQorLSBjb25maWdzL2ZlZG9yYTogTWFr ZSBGZWRvcmEgd29yayB3aXRoIEhOUzMgbmV0d29yayBhZGFwdGVyIChaYW1pciBTVU4pCistIHJl ZGhhdC9jb25maWdzL2ZlZG9yYS9nZW5lcmljOiBFbmFibGUgQ09ORklHX0JMS19ERVZfVUJMSyBv biBGZWRvcmEgKFJpY2hhcmQgVy5NLiBKb25lcykgWzIxMjI1OTVdCistIGZlZG9yYTogZGlzYWJs ZSBJV0xNRUkgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIFVJTlBV VCBvbiBhYXJjaDY0IChCZW5qYW1pbiBUaXNzb2lyZXMpCistIEZlZG9yYSA2LjAgY29uZmlncyBw YXJ0IDEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9NYWtlZmlsZTogQWx3YXlzIHNldCBV UFNUUkVBTSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmlnczogYWFyY2g2NDogVHVy biBvbiBBcHBsZSBTaWxpY29uIGNvbmZpZ3MgZm9yIEZlZG9yYSAoRXJpYyBDdXJ0aW4pCistIEFk ZCBjcHVtYXNrX2t1bml0IHRvIG1vZC1pbnRlcm5hbC5saXN0IChKdXN0aW4gTS4gRm9yYmVzKQor LSBjb25maWcgLSBjb25zb2xpZGF0ZSBkaXNhYmxlZCBNQVJDSCBvcHRpb25zIG9uIHMzOTB4IChE YW4gSG9yw6FrKQorLSBtb3ZlIHRoZSBiYXNlbGluZSBhcmNoIHRvIHoxMyBmb3IgczM5MHggaW4g Ri0zNysgKERhbiBIb3LDoWspCistIHJlZGhhdC9zY3JpcHRzL3JoLWRpc3QtZ2l0LnNoOiBGaXgg b3V0ZGF0ZWQgY3ZzIHJlZmVyZW5jZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2NyaXB0 cy9leHBhbmRfc3JwbS5zaDogVXNlIE1ha2VmaWxlIHZhcmlhYmxlcyAoUHJhcml0IEJoYXJnYXZh KQorLSByZWRoYXQvc2NyaXB0cy9jbG9uZV90cmVlLnNoOiBVc2UgTWFrZWZpbGUgdmFyaWFibGVz IChQcmFyaXQgQmhhcmdhdmEpCistIEZlZG9yYTogYXJtIGNoYW5nZXMgZm9yIDYuMCwgcGFydCAx LCB3aXRoIHNvbWUgQUNQSSAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9zZWxmLXRlc3Q6IEZp eCBzaGVsbGNoZWNrIGVycm9ycyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvZG9jczogQWRk IGRpc3QtYnJldyBCVUlMRF9GTEFHUyBpbmZvcm1hdGlvbiAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQ6IGNoYW5nZSB0aGUgY2hhbmdlbG9nIGl0ZW0gZm9yIHVwc3RyZWFtIG1lcmdlcyAoSGVy dG9uIFIuIEtyemVzaW5za2kpCistIHJlZGhhdDogZml4IGRpc3QtcmVsZWFzZSBidWlsZCBudW1i ZXIgdGVzdCAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJlZGhhdDogZml4IHJlbGVhc2UgbnVt YmVyIGJ1bXAgd2hlbiBkaXN0LXJlbGVhc2UtY2hhbmdlZCBydW5zIChIZXJ0b24gUi4gS3J6ZXNp bnNraSkKKy0gcmVkaGF0OiB1c2UgbmV3IGdlbmxvZy5zaCBzY3JpcHQgdG8gZGV0ZWN0IGNoYW5n ZXMgZm9yIGRpc3QtcmVsZWFzZSAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJlZGhhdDogbW92 ZSBjaGFuZ2Vsb2cgYWRkaXRpb24gdG8gdGhlIHNwZWMgZmlsZSBiYWNrIGludG8gZ2Vuc3BlYy5z aCAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJlZGhhdDogYWx3YXlzIGFkZCBhIHJlYmFzZSBl bnRyeSB3aGVuIGFyayBtZXJnZXMgZnJvbSB1cHN0cmVhbSAoSGVydG9uIFIuIEtyemVzaW5za2kp CistIHJlZGhhdDogZHJvcCBtZXJnZSBhcmsgcGF0Y2hlcyBoYWNrIChIZXJ0b24gUi4gS3J6ZXNp bnNraSkKKy0gcmVkaGF0OiBkb24ndCBoYXJkY29kZSB0ZW1wb3JhcnkgY2hhbmdlbG9nIGZpbGUg KEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQ6IHNwbGl0IGNoYW5nZWxvZyBnZW5lcmF0 aW9uIGZyb20gZ2Vuc3BlYy5zaCAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJlZGhhdDogY29u ZmlnczogRGlzYWJsZSBGSUUgb24gYXJtIChKZXJlbXkgTGludG9uKSBbMjAxMjIyNl0KKy0gcmVk aGF0L01ha2VmaWxlOiBDbGVhbiBsaW51eCB0YXJiYWxscyAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQvY29uZmlnczogQ2xlYW51cCBDT05GSUdfQUNQSV9BR0RJIChQcmFyaXQgQmhhcmdhdmEp CistIHNwZWM6IGFkZCBjcHVwb3dlciBkYWVtb24gcmVsb2FkIG9uIGluc3RhbGwvdXBncmFkZSAo SmFyb2QgV2lsc29uKQorLSByZWRoYXQ6IHByb3Blcmx5IGhhbmRsZSBiaW5hcnkgZmlsZXMgaW4g cGF0Y2hlcyAoT25kcmVqIE1vc25hY2VrKQorLSBBZGQgcHl0aG9uMy1zZXR1cHRvb2xzIGJ1aWxk cmVxIGZvciBwZXJmIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgY3Jvc19rdW5pdCB0byBtb2Qt aW50ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRkIG5ldyB0ZXN0cyB0byBtb2Qt aW50ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvZmYgc29tZSBLdW5pdCB0 ZXN0cyBpbiBwZW5kaW5nIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDbGVhbiB1cCBhIG1pc21hdGNo IGluIEZlZG9yYSBjb25maWdzIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczog U3luYyB1cCBSZXRibGVlZCBjb25maWdzIHdpdGggY2VudG9zLXN0cmVhbSAoV2FpbWFuIExvbmcp CistIENoYW5nZSBDUllQVE9fQkxBS0UyU19YODYgZnJvbSBtIHRvIHkgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIExlYXZlIENPTkZJR19BQ1BJX1ZJREVPIG9uIGZvciB4ODYgb25seSAoSnVzdGluIE0u IEZvcmJlcykKKy0gRml4IEJMQUtFMlNfQVJNIGFuZCBCTEFLRTJTX1g4NiBjb25maWdzIGluIHBl bmRpbmcgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZpeCBwZW5kaW5nIGZvciBBQ1BJX1ZJREVPIChK dXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogRml4IHJtIHdhcm5pbmcgb24gY29u ZmlnIHdhcm5pbmdzIChFcmljIENoYW51ZGV0KQorLSByZWRoYXQvTWFrZWZpbGU6IERlcHJlY2F0 ZSBQUkVCVUlMRF9HSVRfT05MWSB2YXJpYWJsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQv TWFrZWZpbGU6IERlcHJlY2F0ZSBTSU5HTEVfVEFSQkFMTCB2YXJpYWJsZSAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IERlcHJlY2F0ZSBHSVQgdmFyaWFibGUgKFByYXJpdCBC aGFyZ2F2YSkKKy0gVXBkYXRlIENPTkZJR19MT0NLREVQX0NIQUlOU19CSVRTIHRvIDE4IChjbXVy ZikKKy0gQWRkIG5ldyBGSVBTIG1vZHVsZSBuYW1lIGFuZCB2ZXJzaW9uIGNvbmZpZ3MgKFZsYWRp cyBEcm9ub3YpCistIHJlZGhhdC9jb25maWdzL2ZlZG9yYTogTWFrZSBQb3dlclBDJ3MgbngtZ3pp cCBidWlsZGluIChKYWt1YiDEjGFqa2EpCistIG9taXQgdW51c2VkIFByb3ZpZGVzIChEYW4gSG9y w6FrKQorLSBzZWxmLXRlc3Q6IEFkZCB0ZXN0IGZvciBESVNUPSIuZWxuIiAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQ6IEVuYWJsZSBDT05GSUdfTFo0X0NPTVBSRVNTIG9uIEZlZG9yYSAoUHJh cml0IEJoYXJnYXZhKQorLSBmZWRvcmE6IGFybXY3OiBlbmFibGUgTU1DX1NUTTMyX1NETU1DIChQ ZXRlciBSb2JpbnNvbikKKy0gLmdpdGxhYi1jaS55YW1sOiBBZGQgdGVzdCBmb3IgZGlzdC1nZXQt YnVpbGRyZXFzIHRhcmdldCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvZG9jczogQWRkIGlu Zm9ybWF0aW9uIG9uIGJ1aWxkIGRlcGVuZGVuY2llcyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQvTWFrZWZpbGU6IEFkZCBiZXR0ZXIgcGFzcyBtZXNzYWdlIGZvciBkaXN0LWdldC1idWlsZHJl cXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBQcm92aWRlIGEgYmV0dGVy IG1lc3NhZ2UgZm9yIHN5c3RlbS1zYi1jZXJ0cyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQv TWFrZWZpbGU6IENoYW5nZSBkaXN0LWJ1aWxkcmVxLWNoZWNrIHRvIGEgbm9uLWJsb2NraW5nIHRh cmdldCAoUHJhcml0IEJoYXJnYXZhKQorLSBjcmVhdGUtZGF0YTogUGFyYWxsZWxpemUgc3BlYyBm aWxlIGRhdGEgKFByYXJpdCBCaGFyZ2F2YSkKKy0gY3JlYXRlLWRhdGEuc2g6IFN0b3JlIFNPVVJD RVMgTWFrZWZpbGUgdmFyaWFibGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxl OiBTcGxpdCB1cCBzZXR1cC1zb3VyY2UgdGFyZ2V0IChQcmFyaXQgQmhhcmdhdmEpCistIGNyZWF0 ZS1kYXRhLnNoOiBSZWRlZmluZSB2YXJmaWxlbmFtZSAoUHJhcml0IEJoYXJnYXZhKQorLSBjcmVh dGUtZGF0YS5zaDogUGFyYWxsZWxpemUgdmFyaWFibGUgZmlsZSBjcmVhdGlvbiAoUHJhcml0IEJo YXJnYXZhKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19MWjRfQ09NUFJFU1MgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2RvY3M6IFVwZGF0ZSBicmV3IGluZm9ybWF0aW9uIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogRml4IGVsbiBCVUlMRF9UQVJHRVQg KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBTZXQgQlVJTERfVEFSR0VUIGZv ciBkaXN0LWJyZXcgKFByYXJpdCBCaGFyZ2F2YSkKKy0ga2VybmVsLnNwZWMudGVtcGxhdGU6IHVw ZGF0ZSAoczM5MHgpIGV4cG9saW5lLm8gcGF0aCAoSm9lIExhd3JlbmNlKQorLSBmZWRvcmE6IGVu YWJsZSBCQ01fTkVUX1BIWVBUUCAoUGV0ZXIgUm9iaW5zb24pCistIEZlZG9yYSA1LjE5IGNvbmZp Z3MgdXBkYXRlIHBhcnQgMiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L01ha2VmaWxlOiBD aGFuZ2UgZmVkb3JhIEJVSUxEX1RBUkdFVCAoUHJhcml0IEJoYXJnYXZhKQorLSBOZXcgY29uZmln cyBpbiBzZWN1cml0eS9rZXlzIChGZWRvcmEgS2VybmVsIFRlYW0pCistIEZlZG9yYTogYXJtOiBl bmFibGUgYSBwYWlyIG9mIGRyaXZlcnMgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IG1ha2Ug a2VybmVsLXpmY3BkdW1wLWNvcmUgdG8gbm90IHByb3ZpZGUga2VybmVsLWNvcmUva2VybmVsIChI ZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBRQVQgZGV2aWNl cyBmb3IgYXJjaGVzIG90aGVyIHRoYW4geDg2IChWbGFkaXMgRHJvbm92KQorLSBGZWRvcmEgNS4x OSBjb25maWdzIHB0IDEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogRXhjbHVkZSBjcHVm cmVxLmggZnJvbSBrZXJuZWwtaGVhZGVycyAoUGF0cmljayBUYWxiZXJ0KQorLSBBZGQgcnRsYSBz dWJwYWNrYWdlIGZvciBrZXJuZWwtdG9vbHMgKEp1c3RpbiBNLiBGb3JiZXMpCistIGZlZG9yYTog YXJtOiBlbmFibGUgYSBjb3VwbGUgb2YgUUNvbSBkcml2ZXJzIChQZXRlciBSb2JpbnNvbikKKy0g cmVkaGF0L01ha2VmaWxlOiBEZXByZWNhdGUgQlVJTERfU0NSQVRDSF9UQVJHRVQgKFByYXJpdCBC aGFyZ2F2YSkKKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX0RFVlRNUEZTX1NBRkUgKE1hcmsgTGFu Z3Nkb3JmKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBkZXByZWNhdGVkIHZhcmlhYmxlcyBh bmQgdGFyZ2V0cyAoUHJhcml0IEJoYXJnYXZhKQorLSBTcGxpdCBwYXJ0bmVyIG1vZHVsZXMgaW50 byBhIHN1Yi1wYWNrYWdlIChBbGljZSBNaXRjaGVsbCkKKy0gRW5hYmxlIGtBRlMgYW5kIGl0J3Mg ZGVwZW5kYW5jaWVzIGluIFJIRUwgKEFsaWNlIE1pdGNoZWxsKQorLSBFbmFibGUgTWFydmVsbCBP Y3Rlb25UWDIgY3J5cHRvIGRldmljZSBpbiBBUksgKFZsYWRpcyBEcm9ub3YpCistIHJlZGhhdC9N YWtlZmlsZTogUmVtb3ZlIC0tc2NyYXRjaCBmcm9tIEJVSUxEX1RBUkdFVCAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IEZpeCBkaXN0LWJyZXcgYW5kIGRpc3RnLWJyZXcgdGFy Z2V0cyAoUHJhcml0IEJoYXJnYXZhKQorLSBmZWRvcmE6IGFybTY0OiBJbml0aWFsIHN1cHBvcnQg Zm9yIFRJIEtleXN0b25lIDMgKEFSQ0hfSzMpIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBh cm06IGVuYWJsZSBIYXJkd2FyZSBUaW1lc3RhbXBpbmcgRW5naW5lIHN1cHBvcnQgKFBldGVyIFJv Ymluc29uKQorLSBmZWRvcmE6IHdpcmVsZXNzOiBkaXNhYmxlIFNpTGFicyBhbmQgUHVyZUxpRmkg KFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IHVwZGF0ZXMgZm9yIDUuMTkgKFBldGVyIFJvYmlu c29uKQorLSBmZWRvcmE6IG1pbm9yIHVwZGF0ZXMgZm9yIEZlZG9yYSBjb25maWdzIChQZXRlciBS b2JpbnNvbikKKy0gY29uZmlncy9mZWRvcmE6IEVuYWJsZSB0aGUgcGluY3RybCBTQzcxODAgZHJp dmVyIGJ1aWx0LWluIChFbnJpYyBCYWxsZXRibyBpIFNlcnJhKQorLSByZWRoYXQvY29uZmlnczog ZW5hYmxlIENPTkZJR19ERUJVR19ORVQgZm9yIGRlYnVnIGtlcm5lbCAoSGFuZ2JpbiBMaXUpCist IHJlZGhhdC9NYWtlZmlsZTogQWRkIFNQRUNLQUJJVkVSU0lPTiB2YXJpYWJsZSAoUHJhcml0IEJo YXJnYXZhKQorLSByZWRoYXQvc2VsZi10ZXN0OiBQcm92aWRlIGJldHRlciBmYWlsdXJlIG91dHB1 dCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2VsZi10ZXN0OiBSZWZvcm1hdCB0ZXN0cyB0 byBrZXJuZWwgc3RhbmRhcmQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDog QWRkIHB1cnBvc2UgYW5kIGhlYWRlciB0byBlYWNoIHRlc3QgKFByYXJpdCBCaGFyZ2F2YSkKKy0g RHJvcCBvdXRkYXRlZCBDUllQVE9fRUNESCBjb25maWdzIChWbGFkaXMgRHJvbm92KQorLSBCcnVz aCB1cCBjcnlwdG8gU0hBNTEyIGFuZCBVU0VSIGNvbmZpZ3MgKFZsYWRpcyBEcm9ub3YpCistIEJy dXNoIHVwIGNyeXB0byBFQ0RIIGFuZCBFQ0RTQSBjb25maWdzIChWbGFkaXMgRHJvbm92KQorLSBy ZWRoYXQvc2VsZi10ZXN0OiBVcGRhdGUgZGF0YSBzZXQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gY3Jl YXRlLWRhdGEuc2g6IFJlZHVjZSBzcGVjZmlsZSBkYXRhIG91dHB1dCAoUHJhcml0IEJoYXJnYXZh KQorLSByZWRoYXQvY29uZmlnczogcmVzdG9yZS9maXggY29yZSBJTlRFTF9MUFNTIGNvbmZpZ3Mg dG8gYmUgYnVpbHRpbiBhZ2FpbiAoSGFucyBkZSBHb2VkZSkKKy0gRW5hYmxlIENLSSBvbiBvcy1i dWlsZCBNUnMgb25seSAoRG9uIFppY2t1cykKKy0gc2VsZi10ZXN0OiBGaXh1cCBNYWtlZmlsZSBj b250ZW50cyB0ZXN0IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9zZWxmLXRlc3Q6IHNlbGYt dGVzdCBkYXRhIHVwZGF0ZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2VsZi10ZXN0OiBG aXggdXAgY3JlYXRlLWRhdGEuc2ggdG8gbm90IHJlcG9ydCBsb2NhbCB2YXJpYWJsZXMgKFByYXJp dCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3MvZmVkb3JhOiBFbmFibGUgYSBzZXQgb2YgbW9k dWxlcyB1c2VkIG9uIHNvbWUgeDg2IHRhYmxldHMgKEhhbnMgZGUgR29lZGUpCistIHJlZGhhdC9j b25maWdzOiBNYWtlIElOVEVMX1NPQ19QTUlDX0NIVERDX1RJIGJ1aWx0aW4gKEhhbnMgZGUgR29l ZGUpCistIHJlZGhhdC9jb25maWdzL2ZlZG9yYTogZW5hYmxlIG1pc3NpbmcgbW9kdWxlcyBtb2R1 bGVzIGZvciBJbnRlbCBJUFUzIGNhbWVyYSBzdXBwb3J0IChIYW5zIGRlIEdvZWRlKQorLSBDb21t b246IG1pbm9yIGNsZWFudXBzIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBzb21lIG1pbm9y IEZlZG9yYSBjbGVhbnVwcyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogZHJvcCBYODZfUExB VEZPUk1fRFJJVkVSU19ERUxMIGR1cGUgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IGNoYW5n ZSB0b29sc19tYWtlIG1hY3JvIHRvIGF2b2lkIGZ1bGwgb3ZlcnJpZGUgb2YgdmFyaWFibGVzIGlu IE1ha2VmaWxlIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gRml4IHR5cG8gaW4gTWFrZWZpbGUg Zm9yIEZlZG9yYSBTdGFibGUgVmVyc2lvbmluZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gUmVtb3Zl IGR1cGxpY2F0ZXMgZnJvbSBhcmsvZ2VuZXJpYy9zMzkweC96ZmNwZHVtcC8gKFZsYWRpcyBEcm9u b3YpCistIE1vdmUgY29tbW9uL2RlYnVnL3MzOTB4L3pmY3BkdW1wLyBjb25maWdzIHRvIGFyay9k ZWJ1Zy9zMzkweC96ZmNwZHVtcC8gKFZsYWRpcyBEcm9ub3YpCistIE1vdmUgY29tbW9uL2dlbmVy aWMvczM5MHgvemZjcGR1bXAvIGNvbmZpZ3MgdG8gYXJrL2dlbmVyaWMvczM5MHgvemZjcGR1bXAv IChWbGFkaXMgRHJvbm92KQorLSBEcm9wIFJDVV9FWFBfQ1BVX1NUQUxMX1RJTUVPVVQgdG8gMCwg d2UgYXJlIG5vdCByZWFsbHkgYW5kcm9pZCAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2Nv bmZpZ3MvUkVBRE1FOiBVcGRhdGUgdGhlIFJFQURNRSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQvZG9jczogZml4IGh5cGVybGluayB0eXBvIChQYXRyaWNrIFRhbGJlcnQpCistIGFsbDogbmV0 OiByZW1vdmUgb2xkIE5JQy9BVE0gZHJpdmVycyB0aGF0IHVzZSB2aXJ0X3RvX2J1cygpIChQZXRl ciBSb2JpbnNvbikKKy0gRXhwbGljaXRseSB0dXJuIG9mZiBDT05GSUdfS0FTQU5fSU5MSU5FIGZv ciBwcGMgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9kb2NzOiBBZGQgYSBkZXNjcmlwdGlv biBvZiBrZXJuZWwgbmFtaW5nIChQcmFyaXQgQmhhcmdhdmEpCistIENoYW5nZSBDUllQVE9fQ0hB Q0hBX1MzOTAgZnJvbSBtIHRvIHkgKEp1c3RpbiBNLiBGb3JiZXMpCistIGVuYWJsZSBDT05GSUdf TkVUX0FDVF9DVElORk8gaW4gYXJrIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IGVuYWJsZSBDT05GSUdfU1A1MTAwX1RDTyAoRGF2aWQgQXJjYXJpKQorLSByZWRoYXQvY29uZmln czogU2V0IENPTkZJR19WSVJUSU9fSU9NTVUgb24geDg2XzY0IChFcmljIEF1Z2VyKSBbMjA4OTc2 NV0KKy0gVHVybiBvZmYgS0FTQU5fSU5MSU5FIGZvciBSSEVMIHBwYyBpbiBwZW5kaW5nIChKdXN0 aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IHVwZGF0ZSBzZWxm dGVzdCBkYXRhIHZpYSAibWFrZSBkaXN0LXNlbGYtdGVzdC1kYXRhIiAoRGVueXMgVmxhc2Vua28p CistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogcmVtb3ZlIHN0cmF5ICouaGFyZGxpbmst dGVtcG9yYXJ5IGZpbGVzLCBpZiBhbnkgKERlbnlzIFZsYXNlbmtvKQorLSBGaXggdXAgWlNNQUxM T0MgY29uZmlnIGZvciBzMzkwIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIEtBU0FOX09V VExJTkUgZm9yIHBwYyBkZWJ1ZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvbiBLQVNBTl9P VVRMSU5FIGZvciBQUEMgZGVidWcgdG8gYXZvaWQgbWlzbWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMp CistIEZpeCB1cCBjcnlwdG8gY29uZmlnIG1pc3RtYXRjaGVzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBGaXggdXAgY29uZmlnIG1pc21hdGNoZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIGdlbmVyaWMv ZmVkb3JhOiBjbGVhbnVwIGFuZCBkaXNhYmxlIExpZ2h0bmluZyBNb3V0YWluIFNvQyAoUGV0ZXIg Um9iaW5zb24pCistIHJlZGhhdDogU2V0IFNORF9TT0NfU09GX0hEQV9QUk9CRVMgdG8gPW0gKFBh dHJpY2sgVGFsYmVydCkKKy0gRml4IHZlcnNpb25pbmcgb24gc3RhYmxlIEZlZG9yYSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gRW5hYmxlIFBBR0VfUE9PTF9TVEFUUyBmb3IgYXJtIG9ubHkgKEp1c3Rp biBNLiBGb3JiZXMpCistIFJldmVydCAiTWVyZ2UgYnJhbmNoICdmaXgtY2ktMjAyMjA1MjMnIGlu dG8gJ29zLWJ1aWxkJyIgKFBhdHJpY2sgVGFsYmVydCkKKy0gRmxpcCBDT05GSUdfUkFESU9fQURB UFRFUlMgdG8gbW9kdWxlIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9N YWtlZmlsZTogRHJvcCBxdW90YXRpb24gbWFya3MgYXJvdW5kIHN0cmluZyBkZWZpbml0aW9ucyAo UHJhcml0IEJoYXJnYXZhKQorLSBGZWRvcmE6IGFybTogVXBkYXRlcyBmb3IgUUNvbSBkZXZpY2Vz IChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhIGFybSBhbmQgZ2VuZXJpYyB1cGRhdGVzIGZvciA1 LjE3IChQZXRlciBSb2JpbnNvbikKKy0gZW5hYmxlIENPTU1PTl9DTEtfU0k1MzQxIGZvciBYaWxp bnggWllOUS1NUCAoUGV0ZXIgUm9iaW5zb24pCistIFR1cm4gb24gQ09ORklHX0RNX1ZFUklUWV9W RVJJRllfUk9PVEhBU0hfU0lHX1NFQ09OREFSWV9LRVlSSU5HIGZvciBGZWRvcmEgKEp1c3RpbiBN LiBGb3JiZXMpCistIHJlZGhhdC9zZWxmLXRlc3QvZGF0YTogVXBkYXRlIGRhdGEgc2V0IChQcmFy aXQgQmhhcmdhdmEpCistIFJldmVydCB2YXJpYWJsZSBzd2l0Y2ggZm9yIGxhc3R0YWcgKEp1c3Rp biBNLiBGb3JiZXMpCistIHJlZGhhdDogQWRkIHNlbGYtdGVzdHMgdG8gLmdpdGxhYi1jaS55bWwg KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogVXBkYXRlIGRhdGEgKFByYXJp dCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogVW5zZXQgTWFrZWZpbGUgdmFyaWFibGVz IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9zZWxmLXRlc3Q6IE9taXQgU0hFTEwgdmFyaWFi bGUgZnJvbSB0ZXN0IGRhdGEgKFByYXJpdCBCaGFyZ2F2YSkKKy0gQWRkIENPTkZJR19FRklfRFhF X01FTV9BVFRSSUJVVEVTIChKdXN0aW4gTS4gRm9yYmVzKQorLSBVcGRhdGUgZmlsdGVyLW1vZHVs ZXMgZm9yIG1seDUtdmZpby1wY2kgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZlZG9yYSBjb25maWdz IGZvciA1LjE4IChKdXN0aW4gTS4gRm9yYmVzKQorLSBzZWxmLXRlc3QvZGF0YS9jcmVhdGUtZGF0 YS5zaDogQXZvaWQgU0lOR0xFX1RBUkJBTEwgd2FybmluZyAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQvTWFrZWZpbGU6IFJlbmFtZSBQUkVCVUlMRCB0byBVUFNUUkVBTUJVSUxEIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogUmVuYW1lIEJVSUxESUQgdG8gTE9DQUxWRVJT SU9OIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogRml4IGRpc3QtYnJldyAm IGRpc3RnLWJyZXcgdGFyZ2V0cyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6 IFJlb3JnYW5pemUgTUFSS0VSIGNvZGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3Njcmlw dHMvbmV3X3JlbGVhc2Uuc2g6IFVzZSBNYWtlZmlsZSB2YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2 YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBSZW5hbWUgX19ZU1RSRUFNIGFuZCBfX1pTVFJFQU0gKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2dlbnNwZWMuc2g6IEFkZCBjb21tZW50IGFib3V0IFNQ RUNCVUlMRElEIHZhcmlhYmxlIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9rZXJuZWwuc3Bl Yy50ZW1wbGF0ZTogTW92ZSBnZW5zcGVjIHZhcmlhYmxlcyBpbnRvIG9uZSBzZWN0aW9uIChQcmFy aXQgQmhhcmdhdmEpCistIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogUmVtb3ZlIGt2ZXJz aW9uIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogQWRkIFNQRUNUQVJGSUxF X1JFTEVBU0UgY29tbWVudCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJl bmFtZSBSUE1WRVJTSU9OIHRvIEJBU0VWRVJTSU9OIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhh dC9NYWtlZmlsZTogVGFyZ2V0IHdoaXRlc3BhY2UgY2xlYW51cCAoUHJhcml0IEJoYXJnYXZhKQor LSByZWRoYXQvTWFrZWZpbGU6IE1vdmUgU1BFQ1JFTEVBU0UgdG8gZ2Vuc3BlYy5zaCAoUHJhcml0 IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IEFkZCBrZXJuZWwtTlZSIGNvbW1lbnQgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBVc2UgU1BFQ0ZJTEUgdmFyaWFibGUg KFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBSZW1vdmUgS0VYVFJBVkVSU0lP TiAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQ6IEVuYWJsZSBWTSBrc2VsZnRlc3RzIChOaWNv IFBhY2hlKSBbMTk3ODUzOV0KKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX1RFU1RfVk1BTExPQyBm b3Igdm0gc2VsZnRlc3RzIChOaWNvIFBhY2hlKQorLSByZWRoYXQ6IEVuYWJsZSBITU0gdGVzdCB0 byBiZSB1c2VkIGJ5IHRoZSBrc2VsZnRlc3QgdGVzdCBzdWl0ZSAoTmljbyBQYWNoZSkKKy0gcmVk aGF0L01ha2VmaWxlLnZhcmlhYmxlczogQ2hhbmdlIGdpdCBoYXNoIGxlbmd0aCB0byBkZWZhdWx0 IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogRHJvcCBxdW90YXRpb24gbWFy a3MgYXJvdW5kIHN0cmluZyBkZWZpbml0aW9ucyAoUHJhcml0IEJoYXJnYXZhKQorLSBUdXJuIG9u IElOVEVHUklUWV9NQUNISU5FX0tFWVJJTkcgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykK Ky0gcmVkaGF0L2NvbmZpZ3M6IGZpeCBDT05GSUdfSU5URUxfSVNIVFBfRUNMSVRFIChEYXZpZCBB cmNhcmkpCistIHJlZGhhdC9jb25maWdzOiBGaXggcm0gd2FybmluZyBvbiBlcnJvciAoUHJhcml0 IEJoYXJnYXZhKQorLSBGaXggbmlnaHRseSBtZXJnZSBDSSAoRG9uIFppY2t1cykKKy0gcmVkaGF0 L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBmaXggc3RhbmRhbG9uZSB0b29scyBidWlsZCAoSmFuIFN0 YW5jZWspCistIEFkZCBzeXN0ZW0tc2ItY2VydHMgZm9yIFJIRUwtOSAoRG9uIFppY2t1cykKKy0g Rml4IGRpc3QtYnVpbGRjaGVjay1yZXFzIChEb24gWmlja3VzKQorLSBtb3ZlIERBTU9OIGNvbmZp Z3MgdG8gY29ycmVjdCBkaXJlY3RvcnkgKENocmlzIHZvbiBSZWNrbGluZ2hhdXNlbikKKy0gcmVk aGF0OiBpbmRpY2F0ZSBIRUFEIHN0YXRlIGluIHRhcmJhbGwvcnBtIG5hbWUgKEphcm9kIFdpbHNv bikKKy0gRmVkb3JhIDUuMTggY29uZmlnIHNldCBwYXJ0IDEgKEp1c3RpbiBNLiBGb3JiZXMpCist IGZlZG9yYTogYXJtOiBFbmFibGUgbmV3IFJvY2tjaGlwIDM1Nnggc2VyaWVzIGRyaXZlcnMgKFBl dGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGFybTogZW5hYmxlIERSTV9JMkNfTlhQX1REQTk5OFgg b24gYWFyY2g2NCAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9zZWxmLXRlc3Q6IEFkZCB0ZXN0 IHRvIHZlcmlmeSBNYWtlZmlsZSBkZWNsYXJhdGlvbnMuIChQcmFyaXQgQmhhcmdhdmEpCistIHJl ZGhhdC9NYWtlZmlsZTogQWRkIFJIVEVTVCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQ6IHNo ZWxsY2hlY2sgY2xlYW51cCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2VsZi10ZXN0L2Rh dGE6IENsZWFudXAgZGF0YSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvc2VsZi10ZXN0OiBB ZGQgdGVzdCB0byB2ZXJpZnkgU1BFQyB2YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVk aGF0L01ha2VmaWxlOiBBZGQgJ2R1cGxpY2F0ZScgU1BFQyBlbnRyaWVzIGZvciB1c2VyIHNldCB2 YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBSZW5hbWUgVEFS RklMRV9SRUxFQVNFIHRvIFNQRUNUQVJGSUxFX1JFTEVBU0UgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L2dlbnNwZWM6IFJlbmFtZSBQQVRDSExJU1RfQ0hBTkdFTE9HIHRvIFNQRUNQQVRDSExJ U1RfQ0hBTkdFTE9HIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9nZW5zcGVjOiBSZW5hbWUg REVCVUdfQlVJTERTX0VOQUJMRUQgdG8gU1BFQ0RFQlVHX0JVSUxEU19FTkFCTEVEIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogUmVuYW1lIFBLR1JFTEVBU0UgdG8gU1BFQ0JV SUxEIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9nZW5zcGVjOiBSZW5hbWUgQlVJTERJRF9E RUZJTkUgdG8gU1BFQ0JVSUxESUQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxl OiBSZW5hbWUgQ0hBTkdFTE9HIHRvIFNQRUNDSEFOR0VMT0cgKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L01ha2VmaWxlOiBSZW5hbWUgUlBNS0VYVFJBVkVSU0lPTiB0byBTUEVDS0VYVFJBVkVS U0lPTiAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbmFtZSBSUE1LU1VC TEVWRUwgdG8gU1BFQ0tTVUJMRVZFTCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZp bGU6IFJlbmFtZSBSUE1LUEFUQ0hMRVZFTCB0byBTUEVDS1BBVENITEVWRUwgKFByYXJpdCBCaGFy Z2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBSZW5hbWUgUlBNS1ZFUlNJT04gdG8gU1BFQ0tWRVJT SU9OIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogUmVuYW1lIEtWRVJTSU9O IHRvIFNQRUNWRVJTSU9OIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogRGVw cmVjYXRlIHNvbWUgc2ltcGxlIHRhcmdldHMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01h a2VmaWxlOiBVc2UgS1ZFUlNJT04gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IFNldCBHVVBfVEVTVCBpbiBkZWJ1ZyBrZXJuZWwgKEpvZWwgU2F2aXR6KQorLSBlbmFibGUgREFN T04gY29uZmlncyAoQ2hyaXMgdm9uIFJlY2tsaW5naGF1c2VuKSBbMjAwNDIzM10KKy0gcmVkaGF0 OiBhZGQgenN0cmVhbSBzd2l0Y2ggZm9yIHpzdHJlYW0gcmVsZWFzZSBudW1iZXJpbmcgKEhlcnRv biBSLiBLcnplc2luc2tpKQorLSByZWRoYXQ6IGNoYW5nZSBrYWJpIHRhcmJhbGxzIHRvIHVzZSB0 aGUgcGFja2FnZSByZWxlYXNlIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0OiBnZW5l cmF0ZSBkaXN0Z2l0IGNoYW5nZWxvZyBpbiBnZW5zcGVjLnNoIGFzIHdlbGwgKEhlcnRvbiBSLiBL cnplc2luc2tpKQorLSByZWRoYXQ6IG1ha2UgZ2Vuc3BlYyBwcmVmZXIgbWV0YWRhdGEgZnJvbSBn aXQgbm90ZXMgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQ6IHVzZSB0YWdzIGZyb20g Z2l0IG5vdGVzIGZvciB6c3RyZWFtIHRvIGdlbmVyYXRlIGNoYW5nZWxvZyAoSGVydG9uIFIuIEty emVzaW5za2kpCistIEFSSzogUmVtb3ZlIGNvZGUgbWFya2luZyBkZXZpY2VzIHVubWFpbnRhaW5l ZCAoUGV0ZXIgR2VvcmcpCistIHJoX21lc3NhZ2U6IEZpeCBmdW5jdGlvbiBuYW1lIChQZXRlciBH ZW9yZykgWzIwMTkzNzddCistIFR1cm4gb24gQ09ORklHX1JBTkRPTV9UUlVTVF9CT09UTE9BREVS IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogYWFyY2g2NDogZW5hYmxlIENQ VV9GUkVRX0dPVl9TQ0hFRFVUSUwgKE1hcmsgU2FsdGVyKQorLSBNb3ZlIENPTkZJR19IV19SQU5E T01fQ04xMEsgdG8gYSBwcm9wZXIgcGxhY2UgKFZsYWRpcyBEcm9ub3YpCistIHJlZGhhdC9zZWxm LXRlc3Q6IENsZWFuIHVwIGRhdGEgc2V0IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtl ZmlsZS5yaHBrZzogUmVtb3ZlIHF1b3RlcyBmb3IgUkhESVNUR0lUIChQcmFyaXQgQmhhcmdhdmEp CistIHJlZGhhdC9zY3JpcHRzL2NyZWF0ZS10YXJiYWxsLnNoOiBVc2UgTWFrZWZpbGUgdmFyaWFi bGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogRGVwcmVjYXRlIFNJTkdM RV9UQVJCQUxMIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBTSU5H TEVfVEFSQkFMTCB0byBNYWtlZmlsZS52YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVk aGF0L01ha2VmaWxlOiBVc2UgUlBNVkVSU0lPTiAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQv c2NyaXB0cy9yaC1kaXN0LWdpdC5zaDogVXNlIE1ha2VmaWxlIHZhcmlhYmxlcyAoUHJhcml0IEJo YXJnYXZhKQorLSByZWRoYXQvY29uZmlncy9idWlsZF9jb25maWdzLnNoOiBVc2UgTWFrZWZpbGUg dmFyaWFibGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL3Byb2Nlc3NfY29u Zmlncy5zaDogVXNlIE1ha2VmaWxlIHZhcmlhYmxlcyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQva2VybmVsLnNwZWMudGVtcGxhdGU6IFVzZSBSUE1fQlVJTERfTkNQVVMgKFByYXJpdCBCaGFy Z2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3MvZ2VuZXJhdGVfYWxsX2NvbmZpZ3Muc2g6IFVzZSBNYWtl ZmlsZSB2YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJs ZSBuZl90YWJsZXMgU1lOUFJPWFkgZXh0ZW5zaW9uIG9uIGFyayAoRGF2aWRlIENhcmF0dGkpCist IGZlZG9yYTogRGlzYWJsZSBmYmRldiBkcml2ZXJzIG1pc3NlZCBiZWZvcmUgKEphdmllciBNYXJ0 aW5leiBDYW5pbGxhcykKKy0gUmVkaGF0OiBlbmFibGUgS2ZlbmNlIG9uIHByb2R1Y3Rpb24gc2Vy dmVycyAoTmljbyBQYWNoZSkKKy0gcmVkaGF0OiBpZ25vcmUga25vd24gZW1wdHkgcGF0Y2hlcyBv biB0aGUgcGF0Y2hlcyBycG1pbnNwZWN0IHRlc3QgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBr ZXJuZWwtYXJrOiBhcmNoX2h3IFVwZGF0ZSBDT05GSUdfTU9VU0VfVlNYWFhBQT1tIChUb255IENh bXVzbykgWzIwNjI5MDldCistIHNwZWM6IGtlZXAgLkJURiBzZWN0aW9uIGluIG1vZHVsZXMgZm9y IHMzOTAgKFlhdWhlbmkgS2FsaXV0YSkgWzIwNzE5NjldCistIGtlcm5lbC5zcGVjLnRlbXBsYXRl OiBTaGlwIGFyY2gvczM5MC9saWIvZXhwb2xpbmUubyBpbiBrZXJuZWwtZGV2ZWwgKE9uZHJlaiBN b3NuYWNlaykKKy0gcmVkaGF0OiBkaXNhYmxlIHR2L3JhZGlvIG1lZGlhIGRldmljZSBpbmZyYXN0 cnVjdHVyZSAoSmFyb2QgV2lsc29uKQorLSByZWRoYXQvY29uZmlnczogY2xlYW4gdXAgSU5URUxf TFBTUyBjb25maWd1cmF0aW9uIChEYXZpZCBBcmNhcmkpCistIEhhdmUgdG8gcmVuYW1lIHRoZSBh Y3R1YWwgY29udGVudHMgdG9vIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUaGUgQ09ORklHX1NBVEFf TU9CSUxFX0xQTV9QT0xJQ1kgcmViYW5lIHdhcyByZXZlcnRlZCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gcmVkaGF0OiBFbmFibGUgS0FTQU4gb24gYWxsIEVMTiBkZWJ1ZyBrZXJuZWxzIChOaWNvIFBh Y2hlKQorLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJsZSBJTlRFTF9JT01NVV9ERUJVR0ZTIGZvciBk ZWJ1ZyBidWlsZHMgKEplcnJ5IFNuaXRzZWxhYXIpCistIGdlbmVyaWM6IGNhbjogZGlzYWJsZSBD QU5fU09GVElORyBldmVyeXdoZXJlIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0L2NvbmZpZ3M6 IEVuYWJsZSBDT05GSUdfRE1fRVJBPW0gZm9yIGFsbCAoWWFua28gS2FuZXRpKQorLSByZWRoYXQv Y29uZmlnczogZW5hYmxlIENPTkZJR19TQU1QTEVfVkZJT19NREVWX01UVFkgKFBhdHJpY2sgVGFs YmVydCkKKy0gQnVpbGQgaW50ZWxfc2RzaSB3aXRoICUle3Rvb2xzX21ha2V9IChKdXN0aW4gTS4g Rm9yYmVzKQorLSBjb25maWdzOiByZW1vdmUgcmVkdW5kYW50IEZlZG9yYSBjb25maWcgZm9yIElO VEVMX0lEWERfQ09NUEFUIChKZXJyeSBTbml0c2VsYWFyKQorLSByZWRoYXQvY29uZmlnczogZW5h YmxlIENPTkZJR19SQU5ET01JWkVfS1NUQUNLX09GRlNFVF9ERUZBVUxUIChKb2VsIFNhdml0eikg WzIwMjYzMTldCistIGNvbmZpZ3M6IGVuYWJsZSBDT05GSUdfUk1JNF9GM0EgKEJlbmphbWluIFRp c3NvaXJlcykKKy0gcmVkaGF0OiBjb25maWdzOiBEaXNhYmxlIFRQTSAxLjIgc3BlY2lmaWMgZHJp dmVycyAoSmVycnkgU25pdHNlbGFhcikKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBjcjUwIEky QyBUUE0gaW50ZXJmYWNlIChBa2loaWtvIE9kYWtpKQorLSBzcGVjOiBtYWtlIEhNQUMgZmlsZSBl bmNvZGUgcmVsYXRpdmUgcGF0aCAoSm9uYXRoYW4gTGVib24pCistIHJlZGhhdC9rZXJuZWwuc3Bl Yy50ZW1wbGF0ZTogQWRkIGludGVsX3Nkc2kgdXRpbGl0eSAoUHJhcml0IEJoYXJnYXZhKQorLSBT cGVjIGZpeGVzIGZvciBpbnRlbC1zcGVlZC1zZWxlY3QgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFk ZCBQYXJ0bmVyIFN1cHBvcnRlZCB0YWludCBmbGFnIHRvIGtBRlMgKEFsaWNlIE1pdGNoZWxsKSBb MjAzODk5OV0KKy0gQWRkIFBhcnRuZXIgU3VwcG9ydGVkIHRhaW50IGZsYWcgKEFsaWNlIE1pdGNo ZWxsKSBbMjAzODk5OV0KKy0gRW5hYmxlZCBJTlRFR1JJVFlfTUFDSElORV9LRVlSSU5HIGZvciBh bGwgY29uZmlncy4gKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENP TkZJR19SQ1VfU0NBTEVfVEVTVCAmIENPTkZJR19SQ1VfUkVGX1NDQUxFX1RFU1QgKFdhaW1hbiBM b25nKQorLSBBZGQgY2xrX3Rlc3QgYW5kIGNsay1nYXRlX3Rlc3QgdG8gbW9kLWludGVybmFsLmxp c3QgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9zZWxmLXRlc3RzOiBJZ25vcmUgVVBTVFJF QU0gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdHM6IElnbm9yZSBSSEdJVFVS TCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGUudmFyaWFibGVzOiBFeHRlbmQg Z2l0IGhhc2ggbGVuZ3RoIHRvIDE1IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9zZWxmLXRl c3Q6IFJlbW92ZSBjaGFuZ2Vsb2cgZnJvbSBzcGVjIGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCist IHJlZGhhdC9nZW5zcGVjLnNoOiBSZWFycmFuZ2UgZ2Vuc3BlYy5zaCAoUHJhcml0IEJoYXJnYXZh KQorLSByZWRoYXQvc2VsZi10ZXN0OiBBZGQgc3BlYyBmaWxlIGRhdGEgKFByYXJpdCBCaGFyZ2F2 YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogQWRkIGJldHRlciBkaXN0LWR1bXAtdmFyaWFibGVzIHRl c3QgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L3NlbGYtdGVzdDogQWRkIHZhcmlhYmxlIHRl c3QgZGF0YSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmlnOiBSZW1vdmUgb2Jzb2xl dGUgQ09ORklHX01GRF9JTlRFTF9QTVQgKERhdmlkIEFyY2FyaSkKKy0gcmVkaGF0L2NvbmZpZ3M6 IGVuYWJsZSBDT05GSUdfSU5URUxfSVNIVFBfRUNMSVRFIChEYXZpZCBBcmNhcmkpCistIEF2b2lk IGNyZWF0aW5nIGZpbGVzIGluICRSUE1fU09VUkNFX0RJUiAoTmljb2xhcyBDaGF1dmV0KQorLSBG bGlwIENSQzY0IGZyb20gb2ZmIHRvIHkgKEp1c3RpbiBNLiBGb3JiZXMpCistIE5ldyBjb25maWdz IGluIGxpYi9LY29uZmlnIChGZWRvcmEgS2VybmVsIFRlYW0pCistIGRpc2FibGUgcmVkdW5kYW50 IGFzc2lnbm1lbnQgb2YgQ09ORklHX0JRTCBvbiBBUksgKERhdmlkZSBDYXJhdHRpKQorLSByZWRo YXQvY29uZmlnczogcmVtb3ZlIHVubmVjZXNzYXJ5IEdQSU8gb3B0aW9ucyBmb3IgYWFyY2g2NCAo QnJpYW4gTWFzbmV5KQorLSByZWRoYXQvY29uZmlnczogcmVtb3ZlIHZpcGVyYm9hcmQgcmVsYXRl ZCBLY29uZmlnIG9wdGlvbnMgKEJyaWFuIE1hc25leSkKKy0gcmVkaGF0L2NvbmZpZ3MvcHJvY2Vz c19jb25maWdzLnNoOiBBdm9pZCByYWNlIHdpdGggZmluZCAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQvY29uZmlncy9wcm9jZXNzX2NvbmZpZ3Muc2g6IFJlbW92ZSBDT05USU5VRU9ORVJST1Ig KFByYXJpdCBCaGFyZ2F2YSkKKy0gUmVtb3ZlIGk2ODYgY29uZmlncyBhbmQgZmlsdGVycyAoSnVz dGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IFNldCBDT05GSUdfWDg2X0FNRF9QU1RB VEUgYnVpbHQtaW4gb24gRmVkb3JhIChQcmFyaXQgQmhhcmdhdmEpCistIEZpeCB1cCBtaXNtYXRj aCB3aXRoIENSQzY0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZXMg dG8gZml4IHByb2Nlc3NfY29uZmlncyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0OiBGaXgg cmVsZWFzZSB0YWdnaW5nIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9zZWxmLXRlc3Q6IEZp eCB2ZXJzaW9uIHRhZyB0ZXN0IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9zZWxmLXRlc3Q6 IEZpeCBCVUlMRCB2ZXJpZmljYXRpb24gdGVzdCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQv c2VsZi10ZXN0OiBDbGVhbnVwIFNSUE0gcmVsYXRlZCBzZWxmLXRlc3RzIChQcmFyaXQgQmhhcmdh dmEpCistIHJlZGhhdC9zZWxmLXRlc3Q6IEZpeCBzaGVsbGNoZWNrIHRlc3QgKFByYXJpdCBCaGFy Z2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgd2F0Y2hkb2cgY29tcG9uZW50cyAoUHJh cml0IEJoYXJnYXZhKQorLSByZWRoYXQvUkVBRE1FLk1ha2VmaWxlOiBBZGQgYSBNYWtlZmlsZSBS RUFETUUgZmlsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBk dXBsaWNhdGVkIGNvZGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0gQWRkIEJ1aWxkUmVxdWlyZXMgbGli bmwzLWRldmVsIGZvciBpbnRlbC1zcGVlZC1zZWxlY3QgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFk ZCBuZXcga3VuaXQgdGVzdHMgZm9yIDUuMTggdG8gbW9kLWludGVybmFsLmxpc3QgKEp1c3RpbiBN LiBGb3JiZXMpCistIEZpeCBSSERJU1RHSVQgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykK Ky0gcmVkaGF0L2NvbmZpZ3MvcHJvY2Vzc19jb25maWdzLnNoOiBGaXggcmFjZSB3aXRoIHRvb2xz IGdlbmVyYXRpb24gKFByYXJpdCBCaGFyZ2F2YSkKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9k YXggKEZlZG9yYSBLZXJuZWwgVGVhbSkKKy0gRml4IHVwIENPTkZJR19TTkRfQU1EX0FDUF9DT05G SUcgZmlsZXMgKFBhdHJpY2sgVGFsYmVydCkKKy0gUmVtb3ZlIENPTkZJR19TTkRfU09DX1NPRl9E RUJVR19QUk9CRVMgZmlsZXMgKFBhdHJpY2sgVGFsYmVydCkKKy0gU0FUQV9NT0JJTEVfTFBNX1BP TElDWSBpcyBub3cgU0FUQV9MUE1fUE9MSUNZIChKdXN0aW4gTS4gRm9yYmVzKQorLSBEZWZpbmUg U05BUFNIT1QgY29ycmVjdGx5IHdoZW4gVkVSU0lPTl9PTl9VUFNUUkVBTSBpcyAwIChKdXN0aW4g TS4gRm9yYmVzKQorLSByZWRoYXQvTWFrZWZpbGU6IEZpeCBkaXN0LWdpdCAoUHJhcml0IEJoYXJn YXZhKQorLSBDaGFuZ2UgdGhlIHBlbmRpbmctYXJrIENPTkZJR19EQVggdG8geSBkdWUgdG8gbWlz bWF0Y2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIEVuYWJsZSBuZXQgcmVmZXJlbmNlIGNvdW50IHRy YWNrZXJzIGluIGFsbCBkZWJ1ZyBrZXJuZWxzIChKaXJpIEJlbmMpCistIHJlZGhhdC9NYWtlZmls ZTogUmVvcmdhbml6ZSB2YXJpYWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2Vm aWxlOiBBZGQgc29tZSBkZXNjcmlwdGlvbnMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01h a2VmaWxlOiBNb3ZlIFNOQVBTSE9UIGNoZWNrIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9N YWtlZmlsZTogRGVwcmVjYXRlIEJSRVdfRkxBR1MsIEtPSklfRkxBR1MsIGFuZCBURVNUX0ZMQUdT IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9nZW5zcGVjLnNoOiBSZXdvcmsgUlBNVkVSU0lP TiB2YXJpYWJsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBk ZWFkIGNvbW1lbnQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBDbGVhbnVw IEtBQkkqIHZhcmlhYmxlcy4gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlLnZh cmlhYmxlczogRGVmYXVsdCBSSEdJVENPTU1JVCB0byBIRUFEIChQcmFyaXQgQmhhcmdhdmEpCist IHJlZGhhdC9zY3JpcHRzL2NyZWF0ZS10YXJiYWxsLnNoOiBVc2UgTWFrZWZpbGUgVEFSQkFMTCB2 YXJpYWJsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBleHRy YSBESVNUX0JSQU5DSCAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFJlbW92 ZSBTVEFNUF9WRVJTSU9OIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92 ZSBOT19DT05GSUdDSEVDS1MgdG8gTWFrZWZpbGUudmFyaWFibGVzIChQcmFyaXQgQmhhcmdhdmEp CistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBSSEpPQlMgdG8gTWFrZWZpbGUudmFyaWFibGVzIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBSSEdJVCogdmFyaWFibGVz IHRvIE1ha2VmaWxlLnZhcmlhYmxlcyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZp bGU6IE1vdmUgUFJFQlVJTERfR0lUX09OTFkgdG8gTWFrZWZpbGUudmFyaWFibGVzIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBCVUlMRCB0byBNYWtlZmlsZS52YXJp YWJsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBNb3ZlIEJVSUxEX0ZM QUdTIHRvIE1ha2VmaWxlLnZhcmlhYmxlcy4gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L01h a2VmaWxlOiBNb3ZlIEJVSUxEX1BST0ZJTEUgdG8gTWFrZWZpbGUudmFyaWFibGVzIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9NYWtlZmlsZTogTW92ZSBCVUlMRF9UQVJHRVQgYW5kIEJVSUxE X1NDUkFUQ0hfVEFSR0VUIHRvIE1ha2VmaWxlLnZhcmlhYmxlcyAoUHJhcml0IEJoYXJnYXZhKQor LSByZWRoYXQvTWFrZWZpbGU6IFJlbW92ZSBSSFBST0RVQ1QgdmFyaWFibGUgKFByYXJpdCBCaGFy Z2F2YSkKKy0gcmVkaGF0L01ha2VmaWxlOiBDbGVhbnVwIERJU1RSTyB2YXJpYWJsZSAoUHJhcml0 IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IE1vdmUgSEVBRCB0byBNYWtlZmlsZS52YXJp YWJsZXMuIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogQ29tYmluZSBNYWtlZmlsZSBhbmQg TWFrZWZpbGUuY29tbW9uIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9rb2ppL01ha2VmaWxl OiBEZWNvdXBsZSBrb2ppIE1ha2VmaWxlIGZyb20gTWFrZWZpbGUuY29tbW9uIChQcmFyaXQgQmhh cmdhdmEpCistIFNldCBDT05GSUdfU05EX1NPQ19TT0ZfTVQ4MTk1IGZvciBGZWRvcmEgYW5kIHR1 cm4gb24gVkRQQV9TSU1fQkxPQ0sgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBhc3VzX3dtaV9z ZW5zb3JzIG1vZHVsZXMgdG8gZmlsdGVycyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQor LSByZWRoYXQ6IHNwZWM6IHRyaWdnZXIgZHJhY3V0IHdoZW4gbW9kdWxlcyBhcmUgaW5zdGFsbGVk IHNlcGFyYXRlbHkgKEphbiBTdGFuY2VrKQorLSBMYXN0IG9mIHRoZSBGZWRvcmEgNS4xNyBjb25m aWdzIGluaXRpYWwgcGFzcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L01ha2VmaWxlOiBT aWxlbmNlIGRpc3QtY2xlYW4tY29uZmlncyBvdXRwdXQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gRmVk b3JhIDUuMTcgY29uZmlnIHVwZGF0ZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIFNldHRpbmcgQ09O RklHX0kyQ19TTUJVUyB0byAibSIgZm9yIGFyayAoR29wYWwgVGl3YXJpKQorLSBQcmludCBhcmNo IHdpdGggcHJvY2Vzc19jb25maWdzIGVycm9ycyAoSnVzdGluIE0uIEZvcmJlcykKKy0gUGFzcyBS SEpPQlMgdG8gcHJvY2Vzc19jb25maWdzIGZvciBkaXN0LWNvbmZpZ3MtY2hlY2sgYXMgd2VsbCAo SnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3MvcHJvY2Vzc19jb25maWdzLnNoOiBG aXggaXNzdWUgd2l0aCBvbGQgZXJyb3IgZmlsZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0 L2NvbmZpZ3MvYnVpbGRfY29uZmlncy5zaDogUGFyYWxsZWxpemUgZXhlY3V0aW9uIChQcmFyaXQg QmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL2J1aWxkX2NvbmZpZ3Muc2g6IFByb3ZpZGUgYmV0 dGVyIG1lc3NhZ2VzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL2J1aWxkX2Nv bmZpZ3Muc2g6IENyZWF0ZSB1bmlxdWUgb3V0cHV0IGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCist IHJlZGhhdC9jb25maWdzL2J1aWxkX2NvbmZpZ3Muc2g6IEFkZCBsb2NhbCB2YXJpYWJsZXMgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3MvcHJvY2Vzc19jb25maWdzLnNoOiBQYXJh bGxlbGl6ZSBleGVjdXRpb24gKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZpZ3MvcHJv Y2Vzc19jb25maWdzLnNoOiBQcm92aWRlIGJldHRlciBtZXNzYWdlcyAoUHJhcml0IEJoYXJnYXZh KQorLSByZWRoYXQvY29uZmlncy9wcm9jZXNzX2NvbmZpZ3Muc2g6IENyZWF0ZSB1bmlxdWUgb3V0 cHV0IGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL3Byb2Nlc3NfY29u Zmlncy5zaDogQWRkIHByb2Nlc3NpbmcgY29uZmlnIGZ1bmN0aW9uIChQcmFyaXQgQmhhcmdhdmEp CistIHJlZGhhdDogVW5pZnkgZ2Vuc3BlYy5zaCBhbmQga2VybmVsLnNwZWMgdmFyaWFibGUgbmFt ZXMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2dlbnNwZWMuc2g6IFJlbW92ZSBvcHRpb25z IGFuZCB1c2UgTWFrZWZpbGUgdmFyaWFibGVzIChQcmFyaXQgQmhhcmdhdmEpCistIEFkZCByZWJh c2Ugbm90ZSBmb3IgNS4xNyBvbiBGZWRvcmEgc3RhYmxlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBN b3JlIEZlZG9yYSBjb25maWcgdXBkYXRlcyBmb3IgNS4xNyAoSnVzdGluIE0uIEZvcmJlcykKKy0g cmVkaGF0L2NvbmZpZ3M6IERpc2FibGUgQ09ORklHX01BQ0lOVE9TSF9EUklWRVJTIGluIFJIRUwu IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogRml4ICJtYWtlIGRpc3QtcmVsZWFzZS1maW5p c2giIHRvIHVzZSB0aGUgY29ycmVjdCBOVlIgdmFyaWFibGVzIChOZWFsIEdvbXBhKSBbMjA1Mzgz Nl0KKy0gQnVpbGQgQ1JPU19FQyBNb2R1bGVzIChKYXNvbiBNb250bGVvbikKKy0gcmVkaGF0OiBj b25maWdzOiBjaGFuZ2UgYWFyY2g2NCBkZWZhdWx0IGRtYSBkb21haW4gdG8gbGF6eSAoSmVycnkg U25pdHNlbGFhcikKKy0gcmVkaGF0OiBjb25maWdzOiBkaXNhYmxlIEFUTSBwcm90b2NvbHMgKERh dmlkZSBDYXJhdHRpKQorLSBjb25maWdzL2ZlZG9yYTogRW5hYmxlIHRoZSBpbnRlcmNvbm5lY3Qg U0M3MTgwIGRyaXZlciBidWlsdC1pbiAoRW5yaWMgQmFsbGV0Ym8gaSBTZXJyYSkKKy0gY29uZmln czogY2xlYW4gdXAgQ09ORklHX1BBR0VfVEFCTEVfSVNPTEFUSU9OIGZpbGVzIChPbmRyZWogTW9z bmFjZWspCistIHJlZGhhdDogY29uZmlnczogZW5hYmxlIENPTkZJR19JTlRFTF9QQ0hfVEhFUk1B TCBmb3IgUkhFTCB4ODYgKERhdmlkIEFyY2FyaSkKKy0gcmVkaGF0L01ha2VmaWxlOiBGaXggZGlz dC1kdW1wLXZhcmlhYmxlcyB0YXJnZXQgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2NvbmZp Z3M6IEVuYWJsZSBERVZfREFYIGFuZCBERVZfREFYX1BNRU0gbW9kdWxlcyBvbiBhYXJjaDY0IGZv ciBmZWRvcmEgKEQgU2NvdHQgUGhpbGxpcHMpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09O RklHX1RSQU5TUEFSRU5UX0hVR0VQQUdFIG9uIGFhcmNoNjQgZm9yIGZlZG9yYSAoRCBTY290dCBQ aGlsbGlwcykKKy0gY29uZmlncy9wcm9jZXNzX2NvbmZpZ3Muc2g6IFJlbW92ZSBvcmlnIGZpbGVz IChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogY29uZmlnczogRGlzYWJsZSBDT05GSUdfTVBM UyBmb3IgczM5MHgvemZjcGR1bXAgKEd1aWxsYXVtZSBOYXVsdCkKKy0gRmVkb3JhIDUuMTcgY29u ZmlncyByb3VuZCAxIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGNvbmZpZ3M6IGRpc2Fi bGUgdGhlIHN1cmZhY2UgcGxhdGZvcm0gKERhdmlkIEFyY2FyaSkKKy0gcmVkaGF0OiBjb25maWdz OiBEaXNhYmxlIHRlYW0gZHJpdmVyIChIYW5nYmluIExpdSkgWzE5NDU0NzddCistIGNvbmZpZ3M6 IGVuYWJsZSBMT0dJVEVDSF9GRiBmb3IgUkhFTC9DZW50T1MgdG9vIChCZW5qYW1pbiBUaXNzb2ly ZXMpCistIHJlZGhhdC9jb25maWdzOiBEaXNhYmxlIENPTkZJR19TRU5TT1JTX05DVDY2ODMgaW4g UkhFTCBmb3IgYXJtL2FhcmNoNjQgKERlYW4gTmVsc29uKSBbMjA0MTE4Nl0KKy0gcmVkaGF0OiBm aXggbWFrZSB7ZGlzdGctYnJldyxkaXN0Zy1rb2ppfSAoQW5kcmVhIENsYXVkaSkKKy0gW2ZlZG9y YV0gVHVybiBvbiBDT05GSUdfVklERU9fT1Y1NjkzIGZvciBzZW5zb3Igc3VwcG9ydCAoRGF2ZSBP bHN0aG9vcm4pCistIENsZWFudXAgJ2Rpc2FibGVkJyBjb25maWcgb3B0aW9ucyBmb3IgUkhFTCAo UHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQ6IG1vdmUgQ09ORklHX0FSTTY0X01URSB0byBhYXJj aDY0IGNvbmZpZyBkaXJlY3RvcnkgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBDaGFuZ2UgQ09O RklHX1RFU1RfQlBGIHRvIGEgbW9kdWxlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDaGFuZ2UgQ09O RklHX1RFU1RfQlBGIHRvIG1vZHVsZSBpbiBwZW5kaW5nIE1SIGNvbWluZyBmb3IgcHJvcGVyIHJl dmlldyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdf VEVTVF9CUEYgKFZpa3RvciBNYWxpaykKKy0gRW5hYmxlIEtVTklUIHRlc3RzIGZvciB0ZXN0aW5n IChOaWNvIFBhY2hlKQorLSBNYWtlZmlsZTogQ2hlY2sgUEtHUkVMRUFTRSBzaXplIG9uIGRpc3Qt YnJldyB0YXJnZXRzIChQcmFyaXQgQmhhcmdhdmEpCistIGtlcm5lbC5zcGVjOiBBZGQgZ2xpYmMt c3RhdGljIGJ1aWxkIHJlcXVpcmVtZW50IChQcmFyaXQgQmhhcmdhdmEpCistIEVuYWJsZSBpU0VS IG9uIHMzOTB4IChTdGVmYW4gU2NodWx6ZSBGcmllbGluZ2hhdXMpCistIHJlZGhhdC9jb25maWdz OiBFbmFibGUgQ09ORklHX0FDRVJfV0lSRUxFU1MgKFBldGVyIEdlb3JnKSBbMjAyNTk4NV0KKy0g a2FiaTogQWRkIGtBQkkgbWFjcm9zIGZvciBlbnVtIHR5cGUgKMSMZXN0bcOtciBLYWxpbmEpIFsy MDI0NTk1XQorLSBrYWJpOiBleHBhbmQgYW5kIGNsYXJpZnkgZG9jdW1lbnRhdGlvbiBvZiBhdXgg c3RydWN0cyAoxIxlc3Rtw61yIEthbGluYSkgWzIwMjQ1OTVdCistIGthYmk6IGludHJvZHVjZSBS SF9LQUJJX1VTRV9BVVhfUFRSICjEjGVzdG3DrXIgS2FsaW5hKSBbMjAyNDU5NV0KKy0ga2FiaTog cmVuYW1lIFJIX0tBQklfU0laRV9BTkRfRVhURU5EIHRvIEFVWCAoxIxlc3Rtw61yIEthbGluYSkg WzIwMjQ1OTVdCistIGthYmk6IG1vcmUgY29uc2lzdGVudCBfUkhfS0FCSV9TSVpFX0FORF9FWFRF TkQgKMSMZXN0bcOtciBLYWxpbmEpIFsyMDI0NTk1XQorLSBrYWJpOiB1c2UgZml4ZWQgZmllbGQg bmFtZSBmb3IgZXh0ZW5kZWQgcGFydCAoxIxlc3Rtw61yIEthbGluYSkgWzIwMjQ1OTVdCistIGth Ymk6IGZpeCBkZXJlZmVyZW5jZSBpbiBSSF9LQUJJX0NIRUNLX0VYVCAoxIxlc3Rtw61yIEthbGlu YSkgWzIwMjQ1OTVdCistIGthYmk6IGZpeCBSSF9LQUJJX1NFVF9TSVpFIG1hY3JvICjEjGVzdG3D rXIgS2FsaW5hKSBbMjAyNDU5NV0KKy0ga2FiaTogZXhwYW5kIGFuZCBjbGFyaWZ5IGRvY3VtZW50 YXRpb24gKMSMZXN0bcOtciBLYWxpbmEpIFsyMDI0NTk1XQorLSBrYWJpOiBtYWtlIFJIX0tBQklf VVNFIHJlcGxhY2UgYW55IG51bWJlciBvZiByZXNlcnZlZCBmaWVsZHMgKMSMZXN0bcOtciBLYWxp bmEpIFsyMDI0NTk1XQorLSBrYWJpOiByZW5hbWUgUkhfS0FCSV9VU0UyIHRvIFJIX0tBQklfVVNF X1NQTElUICjEjGVzdG3DrXIgS2FsaW5hKSBbMjAyNDU5NV0KKy0ga2FiaTogY2hhbmdlIFJIX0tB QklfUkVQTEFDRTIgdG8gUkhfS0FCSV9SRVBMQUNFX1NQTElUICjEjGVzdG3DrXIgS2FsaW5hKSBb MjAyNDU5NV0KKy0ga2FiaTogY2hhbmdlIFJIX0tBQklfUkVQTEFDRV9VTlNBRkUgdG8gUkhfS0FC SV9CUk9LRU5fUkVQTEFDRSAoxIxlc3Rtw61yIEthbGluYSkgWzIwMjQ1OTVdCistIGthYmk6IGlu dHJvZHVjZSBSSF9LQUJJX0FERF9NT0RJRklFUiAoxIxlc3Rtw61yIEthbGluYSkgWzIwMjQ1OTVd CistIGthYmk6IEluY2x1ZGUga2NvbmZpZy5oICjEjGVzdG3DrXIgS2FsaW5hKSBbMjAyNDU5NV0K Ky0ga2FiaTogbWFjcm9zIGZvciBpbnRlbnRpb25hbCBrQUJJIGJyZWFrYWdlICjEjGVzdG3DrXIg S2FsaW5hKSBbMjAyNDU5NV0KKy0ga2FiaTogZml4IHRoZSBub3RlIGFib3V0IHRlcm1pbmF0aW5n IHNlbWljb2xvbiAoxIxlc3Rtw61yIEthbGluYSkgWzIwMjQ1OTVdCistIGthYmk6IGludHJvZHVj ZSBSSF9LQUJJX0hJREVfSU5DTFVERSBhbmQgUkhfS0FCSV9GQUtFX0lOQ0xVREUgKMSMZXN0bcOt ciBLYWxpbmEpIFsyMDI0NTk1XQorLSBzcGVjOiBkb24ndCBvdmVyd3JpdGUgYXV0by5jb25mIHdp dGggLmNvbmZpZyAoT25kcmVqIE1vc25hY2VrKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL2Ny eXB0byAoRmVkb3JhIEtlcm5lbCBUZWFtKQorLSBBZGQgdGVzdF9oYXNoIHRvIHRoZSBtb2QtaW50 ZXJuYWwubGlzdCAoSnVzdGluIE0uIEZvcmJlcykKKy0gY29uZmlnczogZGlzYWJsZSBDT05GSUdf Q1JBTUZTIChBYmhpIERhcykgWzIwNDExODRdCistIHNwZWM6IHNwZWVkIHVwICJjcCAtciIgd2hl biBpdCBvdmVyd3JpdGVzIGV4aXN0aW5nIGZpbGVzLiAoRGVueXMgVmxhc2Vua28pCistIHJlZGhh dDogdXNlIGNlbnRvcyB4NTA5LmdlbmtleSBmaWxlIGlmIGJ1aWxkaW5nIHVuZGVyIGNlbnRvcyAo SGVydG9uIFIuIEtyemVzaW5za2kpCistIFJldmVydCAiW3JlZGhhdF0gR2VuZXJhdGUgYSBjcmFz aGtlcm5lbC5kZWZhdWx0IGZvciBlYWNoIGtlcm5lbCBidWlsZCIgKENvaWJ5IFh1KQorLSBzcGVj OiBtYWtlIGxpbnV4LWZpcm13YXJlIHdlYWsoZXIpIGRlcGVuZGVuY3kgKEphbiBTdGFuY2VrKQor LSBydHc4OTogZW5hYmxlIG5ldyBkcml2ZXIgcnR3ODkgYW5kIGRldmljZSBSVEs4ODUyQUUgKMON w7FpZ28gSHVndWV0KQorLSBDb25maWcgY29uc29saWRhdGlvbiBpbnRvIGNvbW1vbiAoSnVzdGlu IE0uIEZvcmJlcykKKy0gQWRkIHBhY2thZ2VkIGJ1dCBlbXB0eSAvbGliL21vZHVsZXMvPGt2ZXI+ L3N5c3RlbXRhcC8gKEp1c3RpbiBNLiBGb3JiZXMpCistIGZpbHRlci1tb2R1bGVzLnNoLnJoZWw6 IEFkZCBudGNfdGhlcm1pc3RvciB0byBzaW5nbGVtb2RzIChQcmFyaXQgQmhhcmdhdmEpCistIE1v dmUgQ09ORklHX1NORF9TT0NfVExWMzIwQUlDMzFYWCBhcyBpdCBpcyBub3cgc2VsZWN0ZWQgYnkg Q09ORklHX1NORF9TT0NfRlNMX0FTT0NfQ0FSRCAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRkIGRl dl9hZGRyX2xpc3RzX3Rlc3QgdG8gbW9kLWludGVybmFsLmxpc3QgKEp1c3RpbiBNLiBGb3JiZXMp CistIGNvbmZpZ3MvZmVkb3JhOiBFbmFibGUgQ09ORklHX05GQ19QTjUzMl9VQVJUIGZvciB1c2Ug UE41MzIgTkZDIG1vZHVsZSAoWmlxaWFuIFNVTiAoWmFtaXIpKQorLSByZWRoYXQ6IGlnbm9yZSBr c2FtcGxlcyBhbmQga3NlbGZ0ZXN0cyBvbiB0aGUgYmFkZnVuY3MgcnBtaW5zcGVjdCB0ZXN0IChI ZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0OiBkaXNhYmxlIHVwc3RyZWFtIGNoZWNrIGZv ciBycG1pbnNwZWN0IChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0OiBzd2l0Y2ggdGhl IHZzeXNjYWxsIGNvbmZpZyB0byBDT05GSUdfTEVHQUNZX1ZTWVNDQUxMX1hPTkxZPXkgKEhlcnRv biBSLiBLcnplc2luc2tpKSBbMTg3Njk3N10KKy0gcmVkaGF0OiBjb25maWdzOiBpbmNyZWFzZSBD T05GSUdfREVCVUdfS01FTUxFQUtfTUVNX1BPT0xfU0laRSAoUmFmYWVsIEFxdWluaSkKKy0gbW92 ZSBDT05GSUdfU1RSSUNUX1NJR0FMVFNUQUNLX1NJWkUgdG8gdGhlIGFwcHJvcHJpYXRlIGRpcmVj dG9yeSAoRGF2aWQgQXJjYXJpKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19ETV9N VUxUSVBBVEhfSU9BIGZvciBmZWRvcmEgKEJlbmphbWluIE1hcnppbnNraSkKKy0gcmVkaGF0L2Nv bmZpZ3M6IEVuYWJsZSBDT05GSUdfRE1fTVVMVElQQVRIX0hTVCAoQmVuamFtaW4gTWFyemluc2tp KSBbMjAwMDgzNV0KKy0gcmVkaGF0OiBQdWxsIGluIG9wZW5zc2wtZGV2ZWwgYXMgYSBidWlsZCBk ZXBlbmRlbmN5IGNvcnJlY3RseSAoTmVhbCBHb21wYSkgWzIwMzQ2NzBdCistIHJlZGhhdC9jb25m aWdzOiBNaWdyYXRlIFpSQU1fREVGXyogY29uZmlncyB0byBjb21tb24vIChOZWFsIEdvbXBhKQor LSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19DUllQVE9fWlNURCAoTmVhbCBHb21wYSkg WzIwMzI3NThdCistIFR1cm4gQ09ORklHX0RFVk1FTSBiYWNrIG9mZiBmb3IgYWFyY2g2NCAoSnVz dGluIE0uIEZvcmJlcykKKy0gQ2xlYW4gdXAgZXhjZXNzIHRleHQgaW4gRmVkb3JhIGNvbmZpZyBm aWxlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIGZvciA1LjE2 IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19JTlBV VF9LRVlCT0FSRCBmb3IgQUFSQ0g2NCAoVml0YWx5IEt1em5ldHNvdikKKy0gRmVkb3JhIGNvbmZp Z3MgZm9yIDUuMTYgcHQgMSAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IE5G UzogZGlzYWJsZSBVRFAsIGluc2VjdXJlIGVuY3R5cGVzIChCZW5qYW1pbiBDb2RkaW5ndG9uKSBb MTk1Mjg2M10KKy0gVXBkYXRlIHJlYmFzZS1ub3RlcyB3aXRoIGRyYWN1dCA1LjE3IGluZm9ybWF0 aW9uIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19D UllQVE9fQkxBS0UyQiAoTmVhbCBHb21wYSkgWzIwMzE1NDddCistIEVuYWJsZSBDT05GSUdfQlBG X1NZU0NBTEwgZm9yIHpmY3BkdW1wIChKaXJpIE9sc2EpCistIEVuYWJsZSBDT05GSUdfQ0lGU19T TUJfRElSRUNUIGZvciBBUksgKFJvbm5pZSBTYWhsYmVyZykKKy0gbXQ3NjogZW5hYmxlIG5ldyBk ZXZpY2UgTVQ3OTIxRSBpbiBDZW50T3MvUkhFTCAow43DsWlnbyBIdWd1ZXQpIFsyMDA0ODIxXQor LSBEaXNhYmxlIENPTkZJR19ERUJVR19QUkVFTVBUIG9uIG5vcm1hbCBidWlsZHMgKFBoaWwgQXVs ZCkKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdfUENJX1AyUERNQSBmb3IgYXJrIChN eXJvbiBTdG93ZSkKKy0gcGNpLmg6IEZpeCBzdGF0aWMgaW5jbHVkZSAoUHJhcml0IEJoYXJnYXZh KQorLSBFbmFibGUgQ09ORklHX1ZGSU9fTk9JT01NVSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9y YmVzKQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19OVEJfTkVUREVWIGZvciBhcmsg KEpvaG4gVy4gTGludmlsbGUpCistIGRyaXZlcnMvcGNpL3BjaS1kcml2ZXIuYzogRml4IGlmL2lm ZGVmIHR5cG8gKFByYXJpdCBCaGFyZ2F2YSkKKy0gY29tbW9uOiBhcm02NDogZW5zdXJlIGFsbCB0 aGUgcmVxdWlyZWQgYXJtNjQgZXJyYXRhIGFyZSBlbmFibGVkIChQZXRlciBSb2JpbnNvbikKKy0g a2VybmVsL3JoX3RhaW50LmM6IFVwZGF0ZSB0byBuZXcgbWVzc2FnaW5nIChQcmFyaXQgQmhhcmdh dmEpIFsyMDE5Mzc3XQorLSByZWRoYXQvY29uZmlnczogZW5hYmxlIENPTkZJR19BTURfUFRETUEg Zm9yIGFyayAoSm9obiBXLiBMaW52aWxsZSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05G SUdfUkRfWlNURCBmb3IgcmhlbCAoVGFvIExpdSkgWzIwMjAxMzJdCistIGZlZG9yYTogYnVpbGQg VEVFIGFzIGEgbW9kdWxlIGZvciBhbGwgYXJjaGVzIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9u OiBidWlsZCBUUlVTVEVEX0tFWVMgaW4gZXZlcnl3aGVyZSAoUGV0ZXIgUm9iaW5zb24pCistIHJl ZGhhdDogbWFrZSBQYXRjaGxpc3QuY2hhbmdlbG9nIGdlbmVyYXRpb24gY29uZGl0aW9uYWwgKEhl cnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQvY29uZmlnczogQWRkIHR3byBuZXcgQ09ORklH cyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmlnczogUmVtb3ZlIGRlYWQgQ09ORklH IGZpbGVzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzL2V2YWx1YXRlX2NvbmZp Z3M6IEFkZCBmaW5kIGRlYWQgY29uZmlncyBvcHRpb24gKFByYXJpdCBCaGFyZ2F2YSkKKy0gQWRk IG1vcmUgcmViYXNlIG5vdGVzIGZvciBGZWRvcmEgNS4xNiAoSnVzdGluIE0uIEZvcmJlcykKKy0g RmVkb3JhOiBGZWF0dXJlOiBSZXRpcmUgd2lyZWxlc3MgRXh0ZW5zaW9ucyAoUGV0ZXIgUm9iaW5z b24pCistIGZlZG9yYTogYXJtOiBzb21lIFNvQyBlbmFibGVtZW50IHBpZWNlcyAoUGV0ZXIgUm9i aW5zb24pCistIGZlZG9yYTogYXJtOiBlbmFibGUgUENJRV9ST0NLQ0hJUF9EVyBmb3IgcmszNXh4 IHNlcmllcyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogZW5hYmxlIFJUVzg5IDgwMi4xMSBX aUZpIGRyaXZlciAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogYXJtOiBFbmFibGUgRFJNX1BB TkVMX0VEUCAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogc291bmQ6IGVuYWJsZSBuZXcgc291 bmQgZHJpdmVycyAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9jb25maWdzOiB1bnNldCBLRVhF Q19TSUcgZm9yIHMzOTB4IHpmY3BkdW1wIChDb2lieSBYdSkKKy0gc3BlYzogS2VlcCAuQlRGIHNl Y3Rpb24gaW4gbW9kdWxlcyAoSmlyaSBPbHNhKQorLSBGaXggdXAgUFJFRU1QVCBjb25maWdzIChK dXN0aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL21lZGlhIChGZWRvcmEg S2VybmVsIFRlYW0pCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvbmV0L2V0aGVybmV0L2xpdGV4 IChGZWRvcmEgS2VybmVsIFRlYW0pCistIHNwZWM6IGFkZCBicGZfdGVzdG1vZC5rbyB0byBrc2Vs ZnRlc3RzL2JwZiAoVmlrdG9yIE1hbGlrKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL25ldC93 d2FuIChGZWRvcmEgS2VybmVsIFRlYW0pCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvaTJjIChG ZWRvcmEgS2VybmVsIFRlYW0pCistIHJlZGhhdC9kb2NzL2luZGV4LnJzdDogQWRkIGxvY2FsIGJ1 aWxkIGluZm9ybWF0aW9uLiAoUHJhcml0IEJoYXJnYXZhKQorLSBGaXggdXAgcHJlZW1wdCBjb25m aWdzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9uIENPTkZJR19ISURfTklOVEVORE8gZm9y IGNvbnRyb2xsZXIgc3VwcG9ydCAoRGF2ZSBPbHN0aG9vcm4pCistIEZlZG9yYTogRW5hYmxlIE1l ZGlhVGVrIGJsdWV0b290aCBwaWVjZXMgKFBldGVyIFJvYmluc29uKQorLSBBZGQgcmViYXNlIG5v dGVzIHRvIGNoZWNrIGZvciBQQ0kgcGF0Y2hlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0 OiBjb25maWdzOiBtb3ZlIENPTkZJR19BQ0NFU1NJQklMSVRZIGZyb20gZmVkb3JhIHRvIGNvbW1v biAoSm9obiBXLiBMaW52aWxsZSkKKy0gRmlsdGVyIHVwZGF0ZXMgZm9yIGhpZC1wbGF5c3RhdGlv biBvbiBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIEVuYWJsZSBDT05GSUdfVklSVF9EUklW RVJTIGZvciBBUksgKFZpdGFseSBLdXpuZXRzb3YpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUg Tml0cm8gRW5jbGF2ZXMgb24gYWFyY2g2NCAoVml0YWx5IEt1em5ldHNvdikKKy0gRW5hYmxlIGUx MDAwIGluIHJoZWw5IGFzIHVuc3VwcG9ydGVkIChLZW4gQ294KSBbMjAwMjM0NF0KKy0gVHVybiBv biBDT01NT05fQ0xLX0FYR19BVURJTyBmb3IgRmVkb3JhIHJoYnogMjAyMDQ4MSAoSnVzdGluIE0u IEZvcmJlcykKKy0gRml4IHVwIGZlZG9yYSBjb25maWcgb3B0aW9ucyBmcm9tIG1pc21hdGNoIChK dXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgbmN0Njc3NSB0byBmaWx0ZXItbW9kdWxlcy5zaC5yaGVs IChKdXN0aW4gTS4gRm9yYmVzKQorLSBFbmFibGUgUFJFRU1QVF9EWU5BTUlDIGZvciBhbGwgYnV0 IHMzOTB4IChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgbWVtY3B5X2t1bml0IHRvIG1vZC1pbnRl cm5hbC5saXN0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBmcy9rc21iZCAo RmVkb3JhIEtlcm5lbCBUZWFtKQorLSBBZGQgbmN0Njc3NSB0byBGZWRvcmEgZmlsdGVyLW1vZHVs ZXMuc2ggKEp1c3RpbiBNLiBGb3JiZXMpCistIE5ldyBjb25maWdzIGluIGZzL250ZnMzIChGZWRv cmEgS2VybmVsIFRlYW0pCistIE1ha2UgQ09ORklHX0lPTU1VX0RFRkFVTFRfRE1BX1NUUklDVCBk ZWZhdWx0IGZvciBhbGwgYnV0IHg4NiAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZp Z3M6IGVuYWJsZSAgS0VYRUNfSU1BR0VfVkVSSUZZX1NJRyBmb3IgUkhFTCAoQ29pYnkgWHUpCist IHJlZGhhdC9jb25maWdzOiBlbmFibGUgS0VYRUNfU0lHIGZvciBhYXJjaDY0IFJIRUwgKENvaWJ5 IFh1KSBbMTk5NDg1OF0KKy0gRml4IHVwIGZlZG9yYSBhbmQgcGVuZGluZyBjb25maWdzIGZvciBQ UkVFTVBUIHRvIGVuZCBtaXNtYXRjaCAoSnVzdGluIE0uIEZvcmJlcykKKy0gRW5hYmxlIGJpbmRl ciBmb3IgZmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGNvbmZpZ3M6IFVwZGF0 ZSBjb25maWdzIGZvciB2bXdhcmUgKEthbWFsIEhlaWIpCistIEZlZG9yYSBjb25maWdzIGZvciA1 LjE1IChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IGRv bid0IGhhcmRjb2RlIGdjb3YgYXJjaGVzIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0L2NvbmZpZ3M6 IGNyZWF0ZSBhIHNlcGFyYXRlIGNvbmZpZyBmb3IgZ2NvdiBvcHRpb25zIChKYW4gU3RhbmNlaykK Ky0gVXBkYXRlIGRvY3VtZW50YXRpb24gd2l0aCBGQVEgYW5kIHVwZGF0ZSBmcmVxdWVuY3kgKERv biBaaWNrdXMpCistIERvY3VtZW50IGZvcmNlIHB1bGwgb3B0aW9uIGZvciBtaXJyb3JpbmcgKERv biBaaWNrdXMpCistIElnbm9yZSB0aGUgcmhlbDkga2FiaSBmaWxlcyAoRG9uIFppY2t1cykKKy0g UmVtb3ZlIGxlZ2FjeSBlbHJkeSBjcnVmdCAoRG9uIFppY2t1cykKKy0gcmVkaGF0L2NvbmZpZ3Mv ZXZhbHVhdGVfY29uZmlnczogd2FsayBjZmd2YXJpYW50cyBsaW5lIGJ5IGxpbmUgKEphbiBTdGFu Y2VrKQorLSByZWRoYXQvY29uZmlncy9ldmFsdWF0ZV9jb25maWdzOiBpbnNlcnQgRU1QVFkgdGFn cyBhdCBjb3JyZWN0IHBsYWNlIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBtYWtlIGRpc3Qtc3Jw bS1nY292IGFkZCB0byBCVUlMRE9QVFMgKEphbiBTdGFuY2VrKQorLSBCdWlsZCBDT05GSUdfU1BJ X1BYQTJYWCBhcyBhIG1vZHVsZSBvbiB4ODYgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9j b25maWdzOiBlbmFibGUgQ09ORklHX0JDTUdFTkVUIGFzIG1vZHVsZSAoSm9lbCBTYXZpdHopCist IEZlZG9yYSBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRW5hYmxlIENPTkZJ R19GQUlMX1NVTlJQQyBmb3IgZGVidWcgYnVpbGRzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRv cmE6IERpc2FibGUgZmJkZXYgZHJpdmVycyBhbmQgdXNlIHNpbXBsZWRybSBpbnN0ZWFkIChKYXZp ZXIgTWFydGluZXogQ2FuaWxsYXMpCistIHNwZWM6IERvbid0IGZhaWwgc3BlYyBidWlsZCBpZiBr c2FtcGxlcyBmYWlscyAoSmlyaSBPbHNhKQorLSBFbmFibGUgQ09ORklHX1FDT01fU0NNIGZvciBh cm0gKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogRGlzYWJsZSBjbGFuZydzIGludGVncmF0 ZWQgYXNzZW1ibGVyIG9uIHBwYzY0bGUgYW5kIHMzOTB4IChUb20gU3RlbGxhcmQpCistIHJlZGhh dC9jb25maWdzOiBlbmFibGUgQ09ORklHX0lNQV9XUklURV9QT0xJQ1kgKEJydW5vIE1lbmVndWVs ZSkKKy0gRml4IGRpc3Qtc3JwbS1nY292IChEb24gWmlja3VzKQorLSByZWRoYXQ6IGNvbmZpZ3M6 IGFkZCBDT05GSUdfTlRCIGFuZCByZWxhdGVkIGl0ZW1zIChKb2huIFcuIExpbnZpbGxlKQorLSBB ZGQga2ZlbmNlX3Rlc3QgdG8gbW9kLWludGVybmFsLmxpc3QgKEp1c3RpbiBNLiBGb3JiZXMpCist IEVuYWJsZSBLVU5JVCB0ZXN0cyBmb3IgcmVkaGF0IGtlcm5lbC1tb2R1bGVzLWludGVybmFsIChO aWNvIFBhY2hlKQorLSByZWRoYXQ6IGFkZCAqLW1hdGNoZWQgbWV0YSBwYWNrYWdlcyB0byBycG1p bnNwZWN0IGVtcHR5cnBtIGNvbmZpZyAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIFVzZSBjb21t b24gY29uZmlnIGZvciBOT0RFU19TSElGVCAoTWFyayBTYWx0ZXIpCistIHJlZGhhdDogZml4IHR5 cG8gYW5kIG1ha2UgdGhlIG91dHB1dCBtb3JlIHNpbGVudCBmb3IgZGlzdC1naXQgc3luYyAoSGVy dG9uIFIuIEtyemVzaW5za2kpCistIEZlZG9yYSBOVEZTIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBGZWRvcmEgNS4xNSBjb25maWdzIHBhcnQgMSAoSnVzdGluIE0uIEZvcmJl cykKKy0gRml4IG9yZGVyaW5nIGluIGdlbnNwZWMgYXJncyAoSnVzdGluIE0uIEZvcmJlcykKKy0g cmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBIeXBlci1WIGd1ZXN0cyBvbiBBUk02NCAoVml0YWx5IEt1 em5ldHNvdikgWzIwMDc0MzBdCistIHJlZGhhdDogY29uZmlnczogRW5hYmxlIENPTkZJR19USElO S1BBRF9MTUkgKEhhbnMgZGUgR29lZGUpCistIHJlZGhhdC9kb2NzOiB1cGRhdGUgS29qaSBsaW5r IHRvIGF2b2lkIHJlZGlyZWN0IChKb2VsIFNhdml0eikKKy0gcmVkaGF0OiBhZGQgc3VwcG9ydCBm b3IgZGlmZmVyZW50IHByb2ZpbGVzIHdpdGggZGlzdCotYnJldyAoSGVydG9uIFIuIEtyemVzaW5z a2kpCistIHJlZGhhdDogY29uZmlnczogRGlzYWJsZSB4dGFibGVzIGFuZCBpcHNldCAoUGhpbCBT dXR0ZXIpIFsxOTQ1MTc5XQorLSByZWRoYXQ6IEFkZCBtYXJrX2RyaXZlcl9kZXByZWNhdGVkKCkg KFBoaWwgU3V0dGVyKSBbMTk0NTE3OV0KKy0gQ2hhbmdlIHMzOTB4IENPTkZJR19OT0RFU19TSElG VCBmcm9tIDQgdG8gMSAoSnVzdGluIE0uIEZvcmJlcykKKy0gQnVpbGQgQ1JZUFRPX1NIQTNfKl9T MzkwIGlubGluZSBmb3IgczM5MCB6ZmNwZHVtcCAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0 OiBtb3ZlIHRoZSBESVNUIHZhcmlhYmxlIHNldHRpbmcgdG8gTWFrZWZpbGUudmFyaWFibGVzIChI ZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0L2tlcm5lbC5zcGVjLnRlbXBsYXRlOiBDbGVh bnVwIHNvdXJjZSBudW1iZXJpbmcgKFByYXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0L2tlcm5lbC5z cGVjLnRlbXBsYXRlOiBSZW9yZ2FuaXplIFJIRUwgYW5kIEZlZG9yYSBzcGVjaWZpYyBmaWxlcyAo UHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQva2VybmVsLnNwZWMudGVtcGxhdGU6IEFkZCBpbmNs dWRlX2ZlZG9yYSBhbmQgaW5jbHVkZV9yaGVsIHZhcmlhYmxlcyAoUHJhcml0IEJoYXJnYXZhKQor LSByZWRoYXQvTWFrZWZpbGU6IE1ha2Uga2VybmVsLWxvY2FsIGdsb2JhbCAoUHJhcml0IEJoYXJn YXZhKQorLSByZWRoYXQvTWFrZWZpbGU6IFVzZSBmbGF2b3JzIGZpbGUgKFByYXJpdCBCaGFyZ2F2 YSkKKy0gVHVybiBvbiBDT05GSUdfQ1BVX0ZSRVFfR09WX1NDSEVEVVRJTCBmb3IgeDg2IChKdXN0 aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogUmVtb3ZlIENPTkZJR19JTkZJTklCQU5E X0k0MElXIChLYW1hbCBIZWliKQorLSBjbGVhbnVwIENPTkZJR19YODZfUExBVEZPUk1fRFJJVkVS U19JTlRFTCAoRGF2aWQgQXJjYXJpKQorLSByZWRoYXQ6IHJlbmFtZSB1c2FnZSBvZiAucmhlbDhn aXQubWsgdG8gLnJocGtnLm1rIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gTWFudWFsbHkgYWRk IHBlbmRpbmcgaXRlbXMgdGhhdCBuZWVkIHRvIGJlIHNldCBkdWUgdG8gbWlzbWF0Y2ggKEp1c3Rp biBNLiBGb3JiZXMpCistIENsZWFuIHVwIHBlbmRpbmcgY29tbW9uIChKdXN0aW4gTS4gRm9yYmVz KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19CTEtfQ0dST1VQX0lPTEFURU5DWSAm IENPTkZJR19CTEtfQ0dST1VQX0ZDX0FQUElEIChXYWltYW4gTG9uZykgWzIwMDY4MTNdCistIHJl ZGhhdDogcmVtb3ZlIGtlcm5lbC5jaGFuZ2Vsb2ctOC45OSBmaWxlIChIZXJ0b24gUi4gS3J6ZXNp bnNraSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfU1FVQVNIRlNfWlNURCB3aGlj aCBpcyBhbHJlYWR5IGVuYWJsZWQgaW4gRmVkb3JhIDM0IChUYW8gTGl1KSBbMTk5ODk1M10KKy0g cmVkaGF0OiBidW1wIFJIRUxfTUFKT1IgYW5kIGFkZCB0aGUgY2hhbmdlbG9nIGZpbGUgZm9yIGl0 IChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0OiBhZGQgZG9jdW1lbnRhdGlvbiBhYm91 dCB0aGUgb3MtYnVpbGQgcmViYXNlIHByb2Nlc3MgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBy ZWRoYXQvY29uZmlnczogZW5hYmxlIFNZU1RFTV9CTEFDS0xJU1RfS0VZUklORyB3aGljaCBpcyBh bHJlYWR5IGVuYWJsZWQgaW4gcmhlbDggYW5kIEZlZG9yYSAzNCAoQ29pYnkgWHUpCistIEJ1aWxk IGtlcm5lbC1kb2MgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0geDg2XzY0OiBFbmFi bGUgRWxraGFydCBMYWtlIFF1YWRyYXR1cmUgRW5jb2RlciBQZXJpcGhlcmFsIHN1cHBvcnQgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gVXBkYXRlIENPTkZJR19XRVJST1IgdG8gZGlzYWJsZWQgYXMgaXQg Y2FuIGNhdXNlIGlzc3VlIHdpdGggb3V0IG9mIHRyZWUgbW9kdWxlcy4gKEp1c3RpbiBNLiBGb3Ji ZXMpCistIEZpeHVwIElPTU1VIGNvbmZpZ3MgaW4gcGVuZGluZyBzbyB0aGF0IGNvbmZpZ3MgYXJl IHNhbmUgYWdhaW4gKEp1c3RpbiBNLiBGb3JiZXMpCistIFNvbWUgaW5pdGlhbCBGZWRvcmEgY29u ZmlnIGl0ZW1zIGZvciA1LjE1IChKdXN0aW4gTS4gRm9yYmVzKQorLSBhcm02NDogdXNlIGNvbW1v biBDT05GSUdfTUFYX1pPTkVPUkRFUiBmb3IgYXJtIGtlcm5lbCAoTWFyayBTYWx0ZXIpCistIENy ZWF0ZSBNYWtlZmlsZS52YXJpYWJsZXMgZm9yIGEgc2luZ2xlIHBvaW50IG9mIGNvbmZpZ3VyYXRp b24gY2hhbmdlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBycG1zcGVjOiBkcm9wIHRyYWNlZXZlbnQg ZmlsZXMgaW5zdGVhZCBvZiBqdXN0IGV4Y2x1ZGluZyB0aGVtIGZyb20gZmlsZXMgbGlzdCAoSGVy dG9uIFIuIEtyemVzaW5za2kpIFsxOTY3NjQwXQorLSByZWRoYXQvY29uZmlnOiBFbmFibGVtZW50 IG9mIENPTkZJR19QQVBSX1NDTSBmb3IgUG93ZXJQQyAoR3VzdGF2byBXYWxib24pIFsxOTYyOTM2 XQorLSBBdHRlbXB0IHRvIGZpeCBJbnRlbCBQTVQgY29kZSAoRGF2aWQgQXJjYXJpKQorLSBDSTog RW5hYmxlIHJlYWx0aW1lIGJyYW5jaCB0ZXN0aW5nIChWZXJvbmlrYSBLYWJhdG92YSkKKy0gQ0k6 IEVuYWJsZSByZWFsdGltZSBjaGVja3MgZm9yIGM5cyBhbmQgUkhFTDkgKFZlcm9uaWthIEthYmF0 b3ZhKQorLSBhcms6IHdpcmVsZXNzOiBlbmFibGUgYWxsIHJ0dzg4IHBjaWUgd2lybGVzcyB2YXJp YW50cyAoUGV0ZXIgUm9iaW5zb24pCistIHdpcmVsZXNzOiBydHc4ODogbW92ZSBkZWJ1ZyBvcHRp b25zIHRvIGNvbW1vbi9kZWJ1ZyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogbWlub3IgUFRQ IGNsb2NrIGRyaXZlciBjbGVhbnVwcyAoUGV0ZXIgUm9iaW5zb24pCistIGNvbW1vbjogeDg2OiBl bmFibGUgVk13YXJlIFBUUCBzdXBwb3J0IG9uIGFyayAoUGV0ZXIgUm9iaW5zb24pCistIERpc2Fi bGUgbGlxdWlkaW8gZHJpdmVyIG9uIGFyay9yaGVsIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkgWzE5 OTMzOTNdCistIE1vcmUgRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBGZWRvcmEgY29uZmlnIHVwZGF0ZXMgZm9yIDUuMTQgKEp1c3RpbiBNLiBGb3JiZXMpCistIENJ OiBSZW5hbWUgQVJLIENJIHBpcGVsaW5lIHR5cGUgKFZlcm9uaWthIEthYmF0b3ZhKQorLSBDSTog RmluaXNoIHVwIGM5cyBjb25maWcgKFZlcm9uaWthIEthYmF0b3ZhKQorLSBDSTogVXBkYXRlIHBw YzY0bGUgY29uZmlnIChWZXJvbmlrYSBLYWJhdG92YSkKKy0gQ0k6IHVzZSBtb3JlIHRlbXBsYXRl cyAoVmVyb25pa2EgS2FiYXRvdmEpCistIEZpbHRlciB1cGRhdGVzIGZvciBhYXJjaDY0IChKdXN0 aW4gTS4gRm9yYmVzKQorLSBpbmNyZWFzZSBDT05GSUdfTk9ERVNfU0hJRlQgZm9yIGFhcmNoNjQg KENocmlzIHZvbiBSZWNrbGluZ2hhdXNlbikgWzE4OTAzMDRdCistIHJlZGhhdDogY29uZmlnczog RW5hYmxlIENPTkZJR19XSVJFTEVTU19IT1RLRVkgKEhhbnMgZGUgR29lZGUpCistIHJlZGhhdC9j b25maWdzOiBVcGRhdGUgQ09ORklHX05WUkFNIChEZXNuZXMgQS4gTnVuZXMgZG8gUm9zYXJpbykg WzE5ODgyNTRdCistIGNvbW1vbjogc2VyaWFsOiBidWlsZCBpbiBTRVJJQUxfODI1MF9MUFNTIGZv ciB4ODYgKFBldGVyIFJvYmluc29uKQorLSBwb3dlcnBjOiBlbmFibGUgQ09ORklHX0ZVTkNUSU9O X1BST0ZJTEVSIChEaWVnbyBEb21pbmdvcykgWzE4MzEwNjVdCistIHJlZGhhdC9jb25maWdzOiBE aXNhYmxlIFNvZnQtUm9DRSBkcml2ZXIgKEthbWFsIEhlaWIpCistIHJlZGhhdC9jb25maWdzL2V2 YWx1YXRlX2NvbmZpZ3M6IFVwZGF0ZSBoZWxwIG91dHB1dCAoUHJhcml0IEJoYXJnYXZhKQorLSBy ZWRoYXQvY29uZmlnczogRG91YmxlIE1BWF9MT0NLREVQX0NIQUlOUyAoSnVzdGluIE0uIEZvcmJl cykKKy0gZmVkb3JhOiBjb25maWdzOiBGaXggV001MTAyIEtjb25maWcgKEhhbnMgZGUgR29lZGUp CistIHBvd2VycGM6IGVuYWJsZSBDT05GSUdfUE9XRVI5X0NQVSAoRGllZ28gRG9taW5nb3MpIFsx ODc2NDM2XQorLSByZWRoYXQvY29uZmlnczogRml4IENPTkZJR19WSVJUSU9fSU9NTVUgdG8gJ3kn IG9uIGFhcmNoNjQgKEVyaWMgQXVnZXIpIFsxOTcyNzk1XQorLSBmaWx0ZXItbW9kdWxlcy5zaDog YWRkIG1vcmUgc291bmQgbW9kdWxlcyB0byBmaWx0ZXIgKEphcm9zbGF2IEt5c2VsYSkKKy0gcmVk aGF0L2NvbmZpZ3M6IHNvdW5kIGNvbmZpZ3VyYXRpb24gY2xlYW51cHMgYW5kIHVwZGF0ZXMgKEph cm9zbGF2IEt5c2VsYSkKKy0gY29tbW9uOiBVcGRhdGUgZm9yIENYTCAoQ29tcHV0ZSBFeHByZXNz IExpbmspIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQorLSByZWRoYXQ6IGNvbmZpZ3M6IGRpc2Fi bGUgQ1JZUFRPX1NNIG1vZHVsZXMgKEhlcnRvbiBSLiBLcnplc2luc2tpKSBbMTk5MDA0MF0KKy0g UmVtb3ZlIGZlZG9yYSB2ZXJzaW9uIG9mIHRoZSBMT0NLREVQX0JJVFMsIHdlIHNob3VsZCB1c2Ug Y29tbW9uIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZS1lbmFibGUgc2VybW91c2UgZm9yIHg4NiAo cmhieiAxOTc0MDAyKSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIDUuMTQgY29uZmlncyBy b3VuZCAxIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGFkZCBnYXRpbmcgY29uZmlndXJh dGlvbiBmb3IgY2VudG9zIHN0cmVhbS9yaGVsOSAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHg4 NjogY29uZmlnczogRW5hYmxlIENPTkZJR19URVNUX0ZQVSBmb3IgZGVidWcga2VybmVscyAoVml0 YWx5IEt1em5ldHNvdikgWzE5ODgzODRdCistIHJlZGhhdC9jb25maWdzOiBNb3ZlIENIQUNIQSBh bmQgUE9MWTEzMDUgdG8gY29yZSBrZXJuZWwgdG8gYWxsb3cgQklHX0tFWVM9eSAocm9vdCkgWzE5 ODMyOThdCistIGtlcm5lbC5zcGVjOiBmaXggYnVpbGQgb2Ygc2FtcGxlcy9icGYgKEppcmkgQmVu YykKKy0gRW5hYmxlIE9TTk9JU0VfVFJBQ0VSIGFuZCBUSU1FUkxBVF9UUkFDRVIgKEplcm9tZSBN YXJjaGFuZCkgWzE5NzkzNzldCistIHJwbXNwZWM6IHN3aXRjaCBpaW8gYW5kIGdwaW8gdG9vbHMg dG8gdXNlIHRvb2xzX21ha2UgKEhlcnRvbiBSLiBLcnplc2luc2tpKSBbMTk1Njk4OF0KKy0gY29u Zmlncy9wcm9jZXNzX2NvbmZpZ3Muc2g6IEhhbmRsZSBjb25maWcgaXRlbXMgd2l0aCBubyBoZWxw IHRleHQgKFBhdHJpY2sgVGFsYmVydCkKKy0gZmVkb3JhOiBzb3VuZCBjb25maWcgdXBkYXRlcyBm b3IgNS4xNCAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogT25seSBlbmFibGUgRlNJIGRyaXZl cnMgb24gUE9XRVIgcGxhdGZvcm0gKFBldGVyIFJvYmluc29uKQorLSBUaGUgQ09ORklHX1JBV19E UklWRVIgaGFzIGJlZW4gcmVtb3ZlZCBmcm9tIHVwc3RyZWFtIChQZXRlciBSb2JpbnNvbikKKy0g ZmVkb3JhOiB1cGRhdGVzIGZvciA1LjE0IHdpdGggYSBmZXcgZGlzYWJsZXMgZm9yIGNvbW1vbiBm cm9tIHBlbmRpbmcgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IG1pZ3JhdGUgZnJvbSBNRkRf VFBTNjg0NzAgLT4gSU5URUxfU0tMX0lOVDM0NzIgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6 IFJlbW92ZSBTVEFHSU5HX0dBU0tFVF9GUkFNRVdPUksgKFBldGVyIFJvYmluc29uKQorLSBGZWRv cmE6IG1vdmUgRFJNX1ZNV0dGWCBjb25maWdzIGZyb20gYXJrIC0+IGNvbW1vbiAoUGV0ZXIgUm9i aW5zb24pCistIGZlZG9yYTogYXJtOiBkaXNhYmxlZCB1bnVzZWQgRkIgZHJpdmVycyAoUGV0ZXIg Um9iaW5zb24pCistIGZlZG9yYTogZG9uJ3QgZW5hYmxlIEZCX1ZJUlRVQUwgKFBldGVyIFJvYmlu c29uKQorLSByZWRoYXQvY29uZmlnczogRG91YmxlIE1BWF9MT0NLREVQX0VOVFJJRVMgKFdhaW1h biBMb25nKSBbMTk0MDA3NV0KKy0gcnBtc3BlYzogZml4IHZlcmJvc2Ugb3V0cHV0IG9uIGtlcm5l bC1kZXZlbCBpbnN0YWxsYXRpb24gKEhlcnRvbiBSLiBLcnplc2luc2tpKSBbMTk4MTQwNl0KKy0g QnVpbGQgRmVkb3JhIHg4NnMga2VybmVscyB3aXRoIGJ5dGNyLXdtNTEwMiAoTWFyaXVzIEhvY2gp CistIERlbGV0ZWQgcmVkaGF0L2NvbmZpZ3MvZmVkb3JhL2dlbmVyaWMveDg2L0NPTkZJR19GQl9I WVBFUlYgKFBhdHJpY2sgTGFuZykKKy0gcnBtc3BlYzogY29ycmVjdCB0aGUgZ2hvc3QgaW5pdHJh bWZzIGF0dHJpYnV0ZXMgKEhlcnRvbiBSLiBLcnplc2luc2tpKSBbMTk3NzA1Nl0KKy0gcnBtc3Bl YzogYW1lbmQgcmVtb3ZhbCBvZiBkZXBtb2QgY3JlYXRlZCBmaWxlcyB0byBpbmNsdWRlIG1vZHVs ZXMuYnVpbHRpbi5hbGlhcy5iaW4gKEhlcnRvbiBSLiBLcnplc2luc2tpKSBbMTk3NzA1Nl0KKy0g Y29uZmlnczogcmVtb3ZlIGR1cGxpY2F0ZSBDT05GSUdfRFJNX0hZUEVSViBmaWxlIChQYXRyaWNr IFRhbGJlcnQpCistIENJOiB1c2UgY29tbW9uIGNvZGUgZm9yIG1lcmdlIGFuZCByZWxlYXNlIChE b24gWmlja3VzKQorLSBycG1zcGVjOiBhZGQgcmVsZWFzZSBzdHJpbmcgdG8ga2VybmVsIGRvYyBk aXJlY3RvcnkgbmFtZSAoSmFuIFN0YW5jZWspCistIHJlZGhhdC9jb25maWdzOiBBZGQgQ09ORklH X0lOVEVMX1BNVF9DUkFTSExPRyAoTWljaGFlbCBQZXRsYW4pIFsxODgwNDg2XQorLSByZWRoYXQv Y29uZmlnczogQWRkIENPTkZJR19JTlRFTF9QTVRfVEVMRU1FVFJZIChNaWNoYWVsIFBldGxhbikg WzE4ODA0ODZdCistIHJlZGhhdC9jb25maWdzOiBBZGQgQ09ORklHX01GRF9JTlRFTF9QTVQgKE1p Y2hhZWwgUGV0bGFuKSBbMTg4MDQ4Nl0KKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdf QkxLX0RFVl9aT05FRCAoTWluZyBMZWkpIFsxNjM4MDg3XQorLSBBZGQgLS13aXRoIGNsYW5nX2x0 byBvcHRpb24gdG8gYnVpbGQgdGhlIGtlcm5lbCB3aXRoIExpbmsgVGltZSBPcHRpbWl6YXRpb25z IChUb20gU3RlbGxhcmQpCistIGNvbW1vbjogZGlzYWJsZSBEVkJfQVY3MTEwIGFuZCBhc3NvY2lh dGVkIHBpZWNlcyAoUGV0ZXIgUm9iaW5zb24pCistIEZpeCBmZWRvcmEtb25seSBjb25maWcgdXBk YXRlcyAoRG9uIFppY2t1cykKKy0gRmVkb3IgY29uZmlnIHVwZGF0ZSBmb3IgbmV3IG9wdGlvbiAo SnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBzdG1tYWMgTklDIGZv ciB4ODZfNjQgKE1hcmsgU2FsdGVyKQorLSBhbGw6IGh5cGVydjogdXNlIHRoZSBEUk0gZHJpdmVy IHJhdGhlciB0aGFuIEZCIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBoeXBlcnY6IHVuaWZ5IHRo ZSBNaWNyb3NvZnQgSHlwZXJWIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQorLSBhbGw6IFZNV2Fy ZTogY2xlYW4gdXAgVk1XYXJlIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQorLSBVcGRhdGUgQ09O RklHX0FSTV9GRkFfVFJBTlNQT1JUIChQYXRyaWNrIFRhbGJlcnQpCistIENJOiBIYW5kbGUgYWxs IG1pcnJvcnMgKFZlcm9uaWthIEthYmF0b3ZhKQorLSBUdXJuIG9uIENPTkZJR19TVEFDS1RSQUNF IGZvciBzMzkweCB6ZnBjZHVtcCBrZXJuZWxzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBhcm02NDog c3dpdGNoIGFyayBrZXJuZWwgdG8gNEsgcGFnZXNpemUgKE1hcmsgU2FsdGVyKQorLSBEaXNhYmxl IEFNSUdBX1BBUlRJVElPTiBhbmQgS0FSTUFfUEFSVElUSU9OIChQcmFyaXQgQmhhcmdhdmEpIFsx ODAyNjk0XQorLSBhbGw6IHVuaWZ5IGFuZCBjbGVhbnVwIGkyYyBUUE0yIG1vZHVsZXMgKFBldGVy IFJvYmluc29uKQorLSByZWRoYXQvY29uZmlnczogU2V0IENPTkZJR19WSVJUSU9fSU9NTVUgb24g YWFyY2g2NCAoRXJpYyBBdWdlcikgWzE5NzI3OTVdCistIHJlZGhhdC9jb25maWdzOiBEaXNhYmxl IENPTkZJR19SVF9HUk9VUF9TQ0hFRCBpbiByaGVsIGNvbmZpZyAoUGhpbCBBdWxkKQorLSByZWRo YXQvY29uZmlnczogZW5hYmxlIEtFWEVDX1NJRyB3aGljaCBpcyBhbHJlYWR5IGVuYWJsZWQgaW4g UkhFTDggZm9yIHMzOTB4IGFuZCB4ODZfNjQgKENvaWJ5IFh1KSBbMTk3NjgzNV0KKy0gcnBtc3Bl YzogZG8gbm90IEJ1aWxkUmVxdWlyZXMgYnBmdG9vbCBvbiBub2FyY2ggKEhlcnRvbiBSLiBLcnpl c2luc2tpKQorLSByZWRoYXQvY29uZmlnczogZGlzYWJsZSB7SU1BLEVWTX1fTE9BRF9YNTA5IChC cnVubyBNZW5lZ3VlbGUpIFsxOTc3NTI5XQorLSByZWRoYXQ6IGFkZCBzZWN1cmVib290IENBIGNl cnRpZmljYXRlIHRvIHRydXN0ZWQga2VybmVsIGtleXJpbmcgKEJydW5vIE1lbmVndWVsZSkKKy0g cmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBJTUFfQVJDSF9QT0xJQ1kgZm9yIGFhcmNoNjQgYW5kIHMz OTB4IChCcnVubyBNZW5lZ3VlbGUpCistIHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX01M WEJGX0dJR0Ugb24gYWFyY2g2NCAoQWxhYSBIbGVpaGVsKSBbMTg1ODU5OV0KKy0gY29tbW9uOiBl bmFibGUgU1RSSUNUX01PRFVMRV9SV1ggZXZlcnl3aGVyZSAoUGV0ZXIgUm9iaW5zb24pCistIENP TU1PTl9DTEtfU1RNMzJNUDE1N19TQ01JIGlzIGJvb2wgYW5kIHNlbGVjdHMgQ09NTU9OX0NMS19T Q01JIChKdXN0aW4gTS4gRm9yYmVzKQorLSBrZXJuZWwuc3BlYzogQWRkIGtlcm5lbHssLWRlYnVn fS1kZXZlbC1tYXRjaGVkIG1ldGEgcGFja2FnZXMgKFRpbW90aMOpZSBSYXZpZXIpCistIFR1cm4g b2ZmIHdpdGhfc2VsZnRlc3RzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIERvbid0 IGJ1aWxkIGJwZnRvb2wgb24gRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggbG9jYXRp b24gb2Ygc3lzY2FsbCBzY3JpcHRzIGZvciBrZXJuZWwtZGV2ZWwgKEp1c3RpbiBNLiBGb3JiZXMp CistIGZlZG9yYTogYXJtOiBFbmFibGUgc29tZSBpLk1YOCBvcHRpb25zIChQZXRlciBSb2JpbnNv bikKKy0gRW5hYmxlIExhbmRsb2NrIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZp bHRlciB1cGRhdGUgZm9yIEZlZG9yYSBhYXJjaDY0IChKdXN0aW4gTS4gRm9yYmVzKQorLSBycG1z cGVjOiBvbmx5IGJ1aWxkIGRlYnVnIG1ldGEgcGFja2FnZXMgd2hlcmUgd2UgYnVpbGQgZGVidWcg b25lcyAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJwbXNwZWM6IGRvIG5vdCBCdWlsZFJlcXVp cmVzIGJwZnRvb2wgb24gbm9idWlsZGFyY2hlcyAoSGVydG9uIFIuIEtyemVzaW5za2kpCistIHJl ZGhhdC9jb25maWdzOiBDb25zb2xpZGF0ZSBDT05GSUdfSE1DX0RSViBpbiB0aGUgY29tbW9uIHMz OTB4IGZvbGRlciAoVGhvbWFzIEh1dGgpIFsxOTc2MjcwXQorLSByZWRoYXQvY29uZmlnczogQ29u c29saWRhdGUgQ09ORklHX0VYUE9MSU5FX09GRiBpbiB0aGUgY29tbW9uIGZvbGRlciAoVGhvbWFz IEh1dGgpIFsxOTc2MjcwXQorLSByZWRoYXQvY29uZmlnczogTW92ZSBDT05GSUdfSFdfUkFORE9N X1MzOTAgaW50byB0aGUgczM5MHgvIHN1YmZvbGRlciAoVGhvbWFzIEh1dGgpIFsxOTc2MjcwXQor LSByZWRoYXQvY29uZmlnczogRGlzYWJsZSBDT05GSUdfSE9UUExVR19QQ0lfU0hQQyBpbiB0aGUg RmVkb3JhIHNldHRpbmdzIChUaG9tYXMgSHV0aCkgWzE5NzYyNzBdCistIHJlZGhhdC9jb25maWdz OiBSZW1vdmUgdGhlIG5vbi1leGlzdGVudCBDT05GSUdfTk9fQk9PVE1FTSBzd2l0Y2ggKFRob21h cyBIdXRoKSBbMTk3NjI3MF0KKy0gcmVkaGF0L2NvbmZpZ3M6IENvbXBpbGUgdGhlIHZpcnRpby1j b25zb2xlIGFzIGEgbW9kdWxlIG9uIHMzOTB4IChUaG9tYXMgSHV0aCkgWzE5NzYyNzBdCistIHJl ZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX1MzOTBfQ0NXX0lPTU1VIGFuZCBDT05GSUdfVkZJ T19DQ1cgZm9yIEFSSywgdG9vIChUaG9tYXMgSHV0aCkgWzE5NzYyNzBdCistIFJldmVydCAiTWVy Z2UgYnJhbmNoICdlY19maXBzJyBpbnRvICdvcy1idWlsZCciIChWbGFkaXMgRHJvbm92KSBbMTk0 NzI0MF0KKy0gRml4IHR5cG9zIGluIGZlZG9yYSBmaWx0ZXJzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBNb3JlIGZpbHRlcmluZyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggRmVk b3JhIG1vZHVsZSBmaWx0ZXJpbmcgZm9yIHNwaS1hbHRlcmEtZGZsIChKdXN0aW4gTS4gRm9yYmVz KQorLSBGZWRvcmEgNS4xMyBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gZmVk b3JhOiBjbGVhbnVwIFRDR19USVNfSTJDX0NSNTAgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6 IGRyb3AgZHVwbGljYXRlIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQorLSBNb3JlIEZlZG9yYSBj b25maWcgdXBkYXRlcyBmb3IgNS4xMyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZp Z3M6IEVuYWJsZSBuZWVkZWQgZHJpdmVycyBmb3IgQmx1ZUZpZWxkIFNvQyBvbiBhYXJjaDY0IChB bGFhIEhsZWloZWwpIFsxODU4NTkyIDE4NTg1OTQgMTg1ODU5Nl0KKy0gcmVkaGF0OiBSZW5hbWUg bW9kLWJsYWNrbGlzdC5zaCB0byBtb2QtZGVueWxpc3Quc2ggKFByYXJpdCBCaGFyZ2F2YSkKKy0g cmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBDT05GSUdfTkVUX0FDVF9NUExTIChNYXJjZWxvIFJpY2Fy ZG8gTGVpdG5lcikKKy0gY29uZmlnczogRW5hYmxlIENPTkZJR19ERUJVR19LRVJORUwgZm9yIHpm Y3BkdW1wIChKaXJpIE9sc2EpCistIGtlcm5lbC5zcGVjOiBBZGQgc3VwcG9ydCB0byB1c2Ugdm1s aW51eC5oIChEb24gWmlja3VzKQorLSBzcGVjOiBBZGQgdm1saW51eC5oIHRvIGtlcm5lbC1kZXZl bCBwYWNrYWdlIChKaXJpIE9sc2EpCistIFR1cm4gb2ZmIERSTV9YRU5fRlJPTlRFTkQgZm9yIEZl ZG9yYSBhcyB3ZSBoYWQgRFJNX1hFTiBvZmYgYWxyZWFkeSAoSnVzdGluIE0uIEZvcmJlcykKKy0g RmVkb3JhIDUuMTMgY29uZmlnIHVwZGF0ZXMgcHQgMyAoSnVzdGluIE0uIEZvcmJlcykKKy0gYWxs OiBlbmFibGUgYXRoMTFrIHdpcmVsZXNzIG1vZHVsZXMgKFBldGVyIFJvYmluc29uKQorLSBhbGw6 IEVuYWJsZSBXV0FOIGFuZCBhc3NvY2lhdGVkIE1ISSBidXMgcGllY2VzIChQZXRlciBSb2JpbnNv bikKKy0gc3BlYzogRW5hYmxlIHNlZmx0ZXN0cyBycG0gYnVpbGQgKEppcmkgT2xzYSkKKy0gc3Bl YzogQWxsb3cgYnBmIHNlbGZ0ZXN0L3NhbXBsZXMgdG8gZmFpbCAoSmlyaSBPbHNhKQorLSBrdm06 IEFkZCBrdm1fc3RhdC5zZXJ2aWNlIGZpbGUgYW5kIGt2bV9zdGF0IGxvZ3JvdGF0ZSBjb25maWcg dG8gdGhlIHRvb2xzIChKaXJpIEJlbmMpCistIGtlcm5lbC5zcGVjOiBBZGQgbWlzc2luZyBzb3Vy Y2UgZmlsZXMgdG8ga2VybmVsLXNlbGZ0ZXN0cy1pbnRlcm5hbCAoSmlyaSBCZW5jKQorLSBrZXJu ZWwuc3BlYzogc2VsZnRlc3RzOiBhZGQgbmV0L2ZvcndhcmRpbmcgdG8gVEFSR0VUUyBsaXN0IChK aXJpIEJlbmMpCistIGtlcm5lbC5zcGVjOiBzZWxmdGVzdHM6IGFkZCBidWlsZCByZXF1aXJlbWVu dCBvbiBsaWJtbmwtZGV2ZWwgKEppcmkgQmVuYykKKy0ga2VybmVsLnNwZWM6IGFkZCBhY3Rpb24u byB0byBrZXJuZWwtc2VsZnRlc3RzLWludGVybmFsIChKaXJpIEJlbmMpCistIGtlcm5lbC5zcGVj OiBhdm9pZCBidWlsZGluZyBicGZ0b29sIHJlcGVhdGVkbHkgKEppcmkgQmVuYykKKy0ga2VybmVs LnNwZWM6IHNlbGZ0ZXN0cyByZXF1aXJlIHB5dGhvbjMgKEppcmkgQmVuYykKKy0ga2VybmVsLnNw ZWM6IHNraXAgc2VsZnRlc3RzIHRoYXQgZmFpbGVkIHRvIGJ1aWxkIChKaXJpIEJlbmMpCistIGtl cm5lbC5zcGVjOiBmaXggaW5zdGFsbGF0aW9uIG9mIGJwZiBzZWxmdGVzdHMgKEppcmkgQmVuYykK Ky0gcmVkaGF0OiBmaXggc2FtcGxlcyBhbmQgc2VsZnRlc3RzIG1ha2Ugb3B0aW9ucyAoSmlyaSBC ZW5jKQorLSBrZXJuZWwuc3BlYzogZW5hYmxlIG1wdGNwIHNlbGZ0ZXN0cyBmb3Iga2VybmVsLXNl bGZ0ZXN0cy1pbnRlcm5hbCAoSmlyaSBCZW5jKQorLSBrZXJuZWwuc3BlYzogRG8gbm90IGV4cG9y dCBzaGFyZWQgb2JqZWN0cyBmcm9tIGxpYmV4ZWNkaXIgdG8gUlBNIFByb3ZpZGVzIChKaXJpIEJl bmMpCistIGtlcm5lbC5zcGVjOiBhZGQgbWlzc2luZyBkZXBlbmRlbmN5IGZvciB0aGUgd2hpY2gg cGFja2FnZSAoSmlyaSBCZW5jKQorLSBrZXJuZWwuc3BlYzogYWRkIG5ldGZpbHRlciBzZWxmdGVz dHMgdG8ga2VybmVsLXNlbGZ0ZXN0cy1pbnRlcm5hbCAoSmlyaSBCZW5jKQorLSBrZXJuZWwuc3Bl YzogbW92ZSBzbGFiaW5mbyBhbmQgcGFnZV9vd25lcl9zb3J0IGRlYnVnaW5mbyB0byB0b29scy1k ZWJ1Z2luZm8gKEppcmkgQmVuYykKKy0ga2VybmVsLnNwZWM6IHBhY2thZ2UgYW5kIHNoaXAgVk0g dG9vbHMgKEppcmkgQmVuYykKKy0gY29uZmlnczogZW5hYmxlIENPTkZJR19QQUdFX09XTkVSIChK aXJpIEJlbmMpCistIGtlcm5lbC5zcGVjOiBhZGQgY29yZXV0aWxzIChKaXJpIEJlbmMpCistIGtl cm5lbC5zcGVjOiBhZGQgbmV0ZGV2c2ltIGRyaXZlciBzZWxmdGVzdHMgdG8ga2VybmVsLXNlbGZ0 ZXN0cy1pbnRlcm5hbCAoSmlyaSBCZW5jKQorLSByZWRoYXQvTWFrZWZpbGU6IENsZWFuIG91dCB0 aGUgLS13aXRob3V0IGZsYWdzIGZyb20gdGhlIGJhc2Vvbmx5IHJ1bGUgKEppcmkgQmVuYykKKy0g a2VybmVsLnNwZWM6IFN0b3AgYnVpbGRpbmcgdW5uZWNlc3NhcnkgcnBtcyBmb3IgYmFzZW9ubHkg YnVpbGRzIChKaXJpIEJlbmMpCistIGtlcm5lbC5zcGVjOiBkaXNhYmxlIG1vcmUga2FiaSBzd2l0 Y2hlcyBmb3IgZ2NvdiBidWlsZCAoSmlyaSBCZW5jKQorLSBrZXJuZWwuc3BlYzogUmVuYW1lIGth YmktZHcgYmFzZSAoSmlyaSBCZW5jKQorLSBrZXJuZWwuc3BlYzogRml4IGVycm9yIG1lc3NhZ2Vz IGR1cmluZyBidWlsZCBvZiB6ZmNwZHVtcCBrZXJuZWwgKEppcmkgQmVuYykKKy0ga2VybmVsLnNw ZWM6IHBlcmY6IHJlbW92ZSBicGYgZXhhbXBsZXMgKEppcmkgQmVuYykKKy0ga2VybmVsLnNwZWM6 IHNlbGZ0ZXN0cyBzaG91bGQgbm90IGRlcGVuZCBvbiBtb2R1bGVzLWludGVybmFsIChKaXJpIEJl bmMpCistIGtlcm5lbC5zcGVjOiBidWlsZCBzYW1wbGVzIChKaXJpIEJlbmMpCistIGtlcm5lbC5z cGVjOiB0b29sczogc3luYyBtaXNzaW5nIG9wdGlvbnMgd2l0aCBSSEVMIDggKEppcmkgQmVuYykK Ky0gcmVkaGF0L2NvbmZpZ3M6IG5mdGFibGVzOiBFbmFibGUgZXh0cmEgZmxvd3RhYmxlIHN5bWJv bHMgKFBoaWwgU3V0dGVyKQorLSByZWRoYXQvY29uZmlnczogU3luYyBuZXRmaWx0ZXIgb3B0aW9u cyB3aXRoIFJIRUw4IChQaGlsIFN1dHRlcikKKy0gRmVkb3JhIDUuMTMgY29uZmlnIHVwZGF0ZXMg cHQgMiAoSnVzdGluIE0uIEZvcmJlcykKKy0gTW92ZSBDT05GSUdfQVJDSF9JTlRFTF9TT0NGUEdB IHVwIGEgbGV2ZWwgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gZmVkb3JhOiBlbmFi bGUgdGhlIFJvY2tjaGlwIHJrMzM5OSBwY2llIGRyaXZlcnMgKFBldGVyIFJvYmluc29uKQorLSBG ZWRvcmEgNS4xMyBjb25maWcgdXBkYXRlcyBwdCAxIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXgg dmVyc2lvbiByZXF1aXJlbWVudCBmcm9tIG9wZW5jc2QtZGV2ZWwgYnVpbGRyZXEgKEp1c3RpbiBN LiBGb3JiZXMpCistIGNvbmZpZ3MvYXJrL3MzOTA6IHNldCBDT05GSUdfTUFSQ0hfWjE0IGFuZCBD T05GSUdfVFVORV9aMTUgKFBoaWxpcHAgUnVkbykgWzE4NzY0MzVdCistIGNvbmZpZ3MvY29tbW9u L3MzOTA6IENsZWFuIHVwIENPTkZJR197TUFSQ0gsVFVORX1fWiogKFBoaWxpcHAgUnVkbykKKy0g Y29uZmlncy9wcm9jZXNzX2NvbmZpZ3Muc2g6IG1ha2UgdXNlIG9mIGR1bW15LXRvb2xzIChQaGls aXBwIFJ1ZG8pCistIGNvbmZpZ3MvY29tbW9uOiBkaXNhYmxlIENPTkZJR19JTklUX1NUQUNLX0FM TF97UEFUVEVSTixaRVJPfSAoUGhpbGlwcCBSdWRvKQorLSBjb25maWdzL2NvbW1vbi9hYXJjaDY0 OiBkaXNhYmxlIENPTkZJR19SRUxSIChQaGlsaXBwIFJ1ZG8pCistIHJlZGhhdC9jb25maWc6IGVu YWJsZSBTVE1JQ1JPIG5pYyBmb3IgUkhFTCAoTWFyayBTYWx0ZXIpCistIHJlZGhhdC9jb25maWdz OiBFbmFibGUgQVJDSF9URUdSQSBvbiBSSEVMIChNYXJrIFNhbHRlcikKKy0gcmVkaGF0L2NvbmZp Z3M6IGVuYWJsZSBJTUFfS0VYRUMgZm9yIHN1cHBvcnRlZCBhcmNoZXMgKEJydW5vIE1lbmVndWVs ZSkKKy0gcmVkaGF0L2NvbmZpZ3M6IGVuYWJsZSBJTlRFR1JJVFlfU0lHTkFUVVJFIHRvIGFsbCBh cmNoZXMgKEJydW5vIE1lbmVndWVsZSkKKy0gY29uZmlnczogZW5hYmxlIENPTkZJR19MRURTX0JS SUdIVE5FU1NfSFdfQ0hBTkdFRCAoQmVuamFtaW4gVGlzc29pcmVzKQorLSBSSEVMOiBkaXNhYmxl IGlvX3VyaW5nIHN1cHBvcnQgKEplZmYgTW95ZXIpIFsxOTY0NTM3XQorLSBhbGw6IENoYW5naW5n IENPTkZJR19VVl9TWVNGUyB0byBidWlsZCB1dl9zeXNmcy5rbyBhcyBhIGxvYWRhYmxlIG1vZHVs ZS4gKEZyYW5rIFJhbXNheSkKKy0gRW5hYmxlIE5JVFJPX0VOQ0xBVkVTIG9uIFJIRUwgKFZpdGFs eSBLdXpuZXRzb3YpCistIFVwZGF0ZSB0aGUgUXVpY2sgU3RhcnQgZG9jdW1lbnRhdGlvbiAoRGF2 aWQgV2FyZCkKKy0gcmVkaGF0L2NvbmZpZ3M6IFNldCBQVlBBTklDX01NSU8gZm9yIHg4NiBhbmQg UFZQQU5JQ19QQ0kgZm9yIGFhcmNoNjQgKEVyaWMgQXVnZXIpIFsxOTYxMTc4XQorLSBicGY6IEZp eCB1bnByaXZpbGVnZWRfYnBmX2Rpc2FibGVkIHNldHVwIChKaXJpIE9sc2EpCistIEVuYWJsZSBD T05GSUdfQlBGX1VOUFJJVl9ERUZBVUxUX09GRiAoSmlyaSBPbHNhKQorLSBjb25maWdzL2NvbW1v bi9zMzkwOiBkaXNhYmxlIENPTkZJR19RRVRIX3tPU04sT1NYfSAoUGhpbGlwcCBSdWRvKSBbMTkw MzIwMV0KKy0gTWFrZSBDUllQVE9fRUMgYWxzbyBidWlsdGluIChTaW1vIFNvcmNlKSBbMTk0NzI0 MF0KKy0gRG8gbm90IGhhcmQtY29kZSBhIGRlZmF1bHQgdmFsdWUgZm9yIERJU1QgKERhdmlkIFdh cmQpCistIE92ZXJyaWRlICUle2RlYnVnYnVpbGRzZW5hYmxlZH0gaWYgdGhlIC0td2l0aC1yZWxl YXNlIG9wdGlvbiBpcyB1c2VkIChEYXZpZCBXYXJkKQorLSBJbXByb3ZlIGNvbW1lbnRzIGluIFNQ RUMgZmlsZSwgYW5kIG1vdmUgc29tZSBvcHRpb24gdGVzdHMgYW5kIG1hY3JvcyAoRGF2aWQgV2Fy ZCkKKy0gY29uZmlnczogZW5hYmxlIENPTkZJR19FWEZBVF9GUyAoUGF2ZWwgUmVpY2hsKSBbMTk0 MzQyM10KKy0gUmV2ZXJ0IHMzOTB4L3pmY3BkdW1wIHBhcnQgb2YgYTlkMTc5YzQwMjgxIGFuZCBl Y2JmZGRkOTg2MjEgKFZsYWRpcyBEcm9ub3YpCistIEVtYmVkIGNyeXB0byBhbGdvcywgbW9kZXMg YW5kIHRlbXBsYXRlcyBuZWVkZWQgaW4gdGhlIEZJUFMgbW9kZSAoVmxhZGlzIERyb25vdikgWzE5 NDcyNDBdCistIGNvbmZpZ3M6IEFkZCBhbmQgZW5hYmxlIENPTkZJR19IWVBFUlZfVEVTVElORyBm b3IgZGVidWcga2VybmVscyAoTW9oYW1tZWQgR2FtYWwpCistIGNvbmZpZ3M6IGVuYWJsZSBDT05G SUdfQ01BIG9uIHg4Nl82NCBpbiBBUksgKERhdmlkIEhpbGRlbmJyYW5kKSBbMTk0NTAwMl0KKy0g cnBtc3BlYzogYnVpbGQgZGVidWctKiBtZXRhLXBhY2thZ2VzIGlmIGRlYnVnIGJ1aWxkcyBhcmUg ZGlzYWJsZWQgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBVSU86IGRpc2FibGUgdW51c2VkIGNv bmZpZyBvcHRpb25zIChBcmlzdGV1IFJvemFuc2tpKSBbMTk1NzgxOV0KKy0gQVJLLWNvbmZpZzog TWFrZSBhbWRfcGluY3RybCBtb2R1bGUgYnVpbHRpbiAoSGFucyBkZSBHb2VkZSkKKy0gcnBtc3Bl YzogcmV2ZXJ0L2Ryb3AgY29udGVudCBoYXNoIGZvciBrZXJuZWwtaGVhZGVycyAoSGVydG9uIFIu IEtyemVzaW5za2kpCistIHJwbXNwZWM6IGZpeCBjaGVjayB0aGF0IGNhbGxzIEluaXRCdWlsZFZh cnMgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSBmZWRvcmE6IGVuYWJsZSB6b25lZnMgKERhbWll biBMZSBNb2FsKQorLSByZWRoYXQ6IGxvYWQgc3BlY2lmaWMgQVJDSCBrZXlzIHRvIElOVEVHUklU WV9QTEFURk9STV9LRVlSSU5HIChCcnVubyBNZW5lZ3VlbGUpCistIHJlZGhhdDogZW5hYmxlIElO VEVHUklUWV9UUlVTVEVEX0tFWVJJTkcgYWNyb3NzIGFsbCB2YXJpYW50cyAoQnJ1bm8gTWVuZWd1 ZWxlKQorLSByZWRoYXQ6IGVuYWJsZSBTWVNURU1fQkxBQ0tMSVNUX0tFWVJJTkcgYWNyb3NzIGFs bCB2YXJpYW50cyAoQnJ1bm8gTWVuZWd1ZWxlKQorLSByZWRoYXQ6IGVuYWJsZSBJTlRFR1JJVFlf QVNZTU1FVFJJQ19LRVlTIGFjcm9zcyBhbGwgdmFyaWFudHMgKEJydW5vIE1lbmVndWVsZSkKKy0g UmVtb3ZlIHVudXNlZCBib290IGxvYWRlciBzcGVjaWZpY2F0aW9uIGZpbGVzIChEYXZpZCBXYXJk KQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIG1seDUgSVBzZWMgYW5kIFRMUyBvZmZsb2FkcyAo QWxhYSBIbGVpaGVsKSBbMTg2OTY3NCAxOTU3NjM2XQorLSBjb21tb246IGRpc2FibGUgQXBwbGUg U2lsaWNvbiBnZW5lcmFsbHkgKFBldGVyIFJvYmluc29uKQorLSBjbGVhbnVwIEludGVsJ3MgRlBH QSBjb25maWdzIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBtb3ZlIFBUUCBLVk0gc3VwcG9y dCBmcm9tIGFyayB0byBjb21tb24gKFBldGVyIFJvYmluc29uKQorLSBFbmFibGUgQ09ORklHX0RS TV9BTURHUFVfVVNFUlBUUiBmb3IgZXZlcnlvbmUgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhh dDogYWRkIGluaXRpYWwgcnBtaW5zcGVjdCBjb25maWd1cmF0aW9uIChIZXJ0b24gUi4gS3J6ZXNp bnNraSkKKy0gZmVkb3JhOiBhcm0gdXBkYXRlcyBmb3IgNS4xMyAoUGV0ZXIgUm9iaW5zb24pCist IGZlZG9yYTogRW5hYmxlIFdXQU4gYW5kIGFzc29jaWF0ZWQgTUhJIGJpdHMgKFBldGVyIFJvYmlu c29uKQorLSBVcGRhdGUgQ09ORklHX01PRFBST0JFX1BBVEggdG8gL3Vzci9zYmluIChKdXN0aW4g Rm9yYmVzKQorLSBGZWRvcmEgc2V0IG1vZHByb2JlIHBhdGggKEp1c3RpbiBNLiBGb3JiZXMpCist IEtlZXAgc2N0cCBhbmQgbDJ0cCBtb2R1bGVzIGluIG1vZHVsZXMtZXh0cmEgKERvbiBaaWNrdXMp CistIEZpeCBwcGM2NGxlIGNyb3NzIGJ1aWxkIHBhY2thZ2luZyAoRG9uIFppY2t1cykKKy0gRmVk b3JhOiBNYWtlIGFtZF9waW5jdHJsIG1vZHVsZSBidWlsdGluIChIYW5zIGRlIEdvZWRlKQorLSBL ZWVwIENPTkZJR19LQVNBTl9IV19UQUdTIG9mZiBmb3IgYWFyY2g2NCBkZWJ1ZyBjb25maWdzIChK dXN0aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL2J1cyAoRmVkb3JhIEtl cm5lbCBUZWFtKQorLSBSSEVMOiBEb24ndCBidWlsZCBLVk0gUFIgbW9kdWxlIG9uIHBwYzY0IChE YXZpZCBHaWJzb24pIFsxOTMwNjQ5XQorLSBGbGlwIENPTkZJR19VU0JfUk9MRV9TV0lUQ0ggZnJv bSBtIHRvIHkgKEp1c3RpbiBNLiBGb3JiZXMpCistIFNldCB2YWxpZCBvcHRpb25zIGZvciBDT05G SUdfRldfTE9BREVSX1VTRVJfSEVMUEVSIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDbGVhbiB1cCBD T05GSUdfRkJfTU9ERV9IRUxQRVJTIChKdXN0aW4gTS4gRm9yYmVzKQorLSBUdXJuIG9mZiBDT05G SUdfVkZJTyBmb3IgdGhlIHMzOTB4IHpmY3BkdW1wIGtlcm5lbCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gRGVsZXRlIHVudXNlZCBDT05GSUdfU05EX1NPQ19NQVg5ODM5MCBwZW5kaW5nLWNvbW1vbiAo SnVzdGluIE0uIEZvcmJlcykKKy0gVXBkYXRlIHBlbmRpbmctY29tbW9uIGNvbmZpZ3MsIHByZXBh cmluZyB0byBzZXQgY29ycmVjdGx5IChKdXN0aW4gTS4gRm9yYmVzKQorLSBVcGRhdGUgZmVkb3Jh IGZpbHRlcnMgZm9yIHN1cmZhY2UgKEp1c3RpbiBNLiBGb3JiZXMpCistIEJ1aWxkIENPTkZJR19D UllQVE9fRUNEU0EgaW5saW5lIGZvciBzMzkweCB6ZmNwZHVtcCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gUmVwbGFjZSAiZmxhdm91ciIgd2hlcmUgInZhcmlhbnQiIGlzIG1lYW50IGluc3RlYWQgKERh dmlkIFdhcmQpCistIERyb3AgdGhlICUle3ZhcmlhbnR9IG1hY3JvIGFuZCBmaXggLS13aXRoLXZh bmlsbGEgKERhdmlkIFdhcmQpCistIEZpeCBzeW50YXggb2YgJSVrZXJuZWxfdmFyaWFudF9maWxl cyAoRGF2aWQgV2FyZCkKKy0gQ2hhbmdlIGRlc2NyaXB0aW9uIG9mIC0td2l0aG91dC12ZHNvLWlu c3RhbGwgdG8gZml4IHR5cG8gKERhdmlkIFdhcmQpCistIENvbmZpZyB1cGRhdGVzIHRvIHdvcmsg YXJvdW5kIG1pc21hdGNoZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIENPTkZJR19TTkRfU09DX0ZT TF9BU09DX0NBUkQgc2VsZWN0cyBDT05GSUdfTUZEX1dNODk5NCBub3cgKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHdpcmVndWFyZDogZGlzYWJsZSBpbiBGSVBTIG1vZGUgKEhhbmdiaW4gTGl1KSBbMTk0 MDc5NF0KKy0gRW5hYmxlIG10ZHJhbSBmb3IgZmVkb3JhIChyaGJ6IDE5NTU5MTYpIChKdXN0aW4g TS4gRm9yYmVzKQorLSBSZW1vdmUgcmVmZXJlbmNlIHRvIGJwZi1oZWxwZXJzIG1hbiBwYWdlIChK dXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmE6IGVuYWJsZSBtb3JlIG1vZHVsZXMgZm9yIHN1cmZh Y2UgZGV2aWNlcyAoRGF2ZSBPbHN0aG9vcm4pCistIEZpeCBGZWRvcmEgY29uZmlnIG1pc21hdGNo IGZvciBDT05GSUdfRlNMX0VORVRDX0lFUkIgKEp1c3RpbiBNLiBGb3JiZXMpCistIGhhcmRsaW5r IGlzIGluIC91c3IvYmluLyBub3cgKEp1c3RpbiBNLiBGb3JiZXMpCistIEVuc3VyZSBDT05GSUdf S1ZNX0JPT0szU182NF9QUiBzdGF5cyBvbiBpbiBGZWRvcmEsIGV2ZW4gaWYgaXQgaXMgdHVybmVk IG9mZiBpbiBSSEVMIChKdXN0aW4gTS4gRm9yYmVzKQorLSBTZXQgZGF0ZSBpbiBwYWNrYWdlIHJl bGVhc2UgZnJvbSByZXBvc2l0b3J5IGNvbW1pdCwgbm90IHN5c3RlbSBjbG9jayAoRGF2aWQgV2Fy ZCkKKy0gVXNlIGEgYmV0dGVyIHVwc3RyZWFtIHRhcmJhbGwgZmlsZW5hbWUgZm9yIHNuYXBzaG90 cyAoRGF2aWQgV2FyZCkKKy0gRG9uJ3QgY3JlYXRlIGVtcHR5IHBlbmRpbmctY29tbW9uIGZpbGVz IG9uIHBlbmRpbmctZmVkb3JhIGNvbW1pdHMgKERvbiBaaWNrdXMpCistIEFkZCByZWRoYXQvY29u Zmlncy9wZW5kaW5nLWNvbW1vbi9nZW5lcmljL3MzOTB4L3pmY3BkdW1wL0NPTkZJR19ORVRGU19T VVBQT1JUIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDcmVhdGUgYXJrLWxhdGVzdCBicmFuY2ggbGFz dCBmb3IgQ0kgc2NyaXB0cyAoRG9uIFppY2t1cykKKy0gUmVwbGFjZSAvdXNyL2xpYmV4ZWMvcGxh dGZvcm0tcHl0aG9uIHdpdGggL3Vzci9iaW4vcHl0aG9uMyAoRGF2aWQgV2FyZCkKKy0gVHVybiBv ZmYgQURJX0FYSV9BREMgYW5kIEFEOTQ2NyB3aGljaCBub3cgcmVxdWlyZSBDT05GSUdfT0YgKEp1 c3RpbiBNLiBGb3JiZXMpCistIEV4cG9ydCBhcmsgaW5mcmFzdHJ1Y3R1cmUgZmlsZXMgKERvbiBa aWNrdXMpCistIGRvY3M6IFVwZGF0ZSBkb2NzIHRvIHJlZmxlY3QgbmV3ZXIgd29ya2Zsb3cuIChE b24gWmlja3VzKQorLSBVc2UgdXBzdHJlYW0vbWFzdGVyIGZvciBtZXJnZS1iYXNlIHdpdGggZmFs bGJhY2sgdG8gbWFzdGVyIChEb24gWmlja3VzKQorLSBGZWRvcmE6IFR1cm4gb2ZmIHRoZSBTTkRf SU5URUxfQllUX1BSRUZFUl9TT0Ygb3B0aW9uIChIYW5zIGRlIEdvZWRlKQorLSBmaWx0ZXItbW9k dWxlcy5zaC5mZWRvcmE6IGNsZWFuIHVwICJuZXRwcm90cyIgKFBhdWwgQm9sbGUpCistIGZpbHRl ci1tb2R1bGVzLnNoLmZlZG9yYTogY2xlYW4gdXAgInNjc2lkcnZzIiAoUGF1bCBCb2xsZSkKKy0g ZmlsdGVyLSouc2guZmVkb3JhOiBjbGVhbiB1cCAiZXRoZHJ2cyIgKFBhdWwgQm9sbGUpCistIGZp bHRlci0qLnNoLmZlZG9yYTogY2xlYW4gdXAgImRyaXZlcmRpcnMiIChQYXVsIEJvbGxlKQorLSBm aWx0ZXItKi5zaC5mZWRvcmE6IHJlbW92ZSBpbmNvcnJlY3QgZW50cmllcyAoUGF1bCBCb2xsZSkK Ky0gZmlsdGVyLSouc2guZmVkb3JhOiBjbGVhbiB1cCAic2luZ2xlbW9kcyIgKFBhdWwgQm9sbGUp CistIGZpbHRlci1tb2R1bGVzLnNoLmZlZG9yYTogZHJvcCB1bnVzZWQgbGlzdCAiaWlvZHJ2cyIg KFBhdWwgQm9sbGUpCistIFVwZGF0ZSBtb2QtaW50ZXJuYWwgdG8gZml4IGRlcG1vZCBpc3N1ZSAo TmljbyBQYWNoZSkKKy0gVHVybiBvbiBDT05GSUdfVkRQQV9TSU1fTkVUIChyaGJ6IDE5NDIzNDMp IChKdXN0aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL3Bvd2VyIChGZWRv cmEgS2VybmVsIFRlYW0pCistIFR1cm4gb24gQ09ORklHX05PVVZFQVVfREVCVUdfUFVTSCBmb3Ig ZGVidWcgY29uZmlncyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvZmYgS0ZFTkNFIHNhbXBs aW5nIGJ5IGRlZmF1bHQgZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNv bmZpZyB1cGRhdGVzIHJvdW5kIDIgKEp1c3RpbiBNLiBGb3JiZXMpCistIE5ldyBjb25maWdzIGlu IGRyaXZlcnMvc29jIChKZXJlbXkgQ2xpbmUpCistIGZpbHRlci1tb2R1bGVzLnNoOiBGaXggY29w eS9wYXN0ZSBlcnJvciAnaW5wdXQnIChQYXVsIEJvbGxlKQorLSBVcGRhdGUgbW9kdWxlIGZpbHRl cmluZyBmb3IgNS4xMiBrZXJuZWxzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGaXggZ2VubG9nLnB5 IHRvIGVuc3VyZSB0aGF0IGNvbW1lbnRzIHJldGFpbiAiJSUiIGNoYXJhY3RlcnMuIChNYXJrIE1p ZWxrZSkKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9sZWRzIChGZWRvcmEgS2VybmVsIFRlYW0p CistIExpbWl0IENPTkZJR19VU0JfQ0ROU19TVVBQT1JUIHRvIHg4Nl82NCBhbmQgYXJtIGluIEZl ZG9yYSAoRGF2aWQgV2FyZCkKKy0gRmVkb3JhOiBFbmFibGUgQ0hBUkdFUl9HUElPIG9uIGFhcmNo NjQgdG9vIChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBjb25maWdzOiBlbmFibGUgQ09ORklHX1dJUkVHVUFSRCBpbiBBUksgKEhh bmdiaW4gTGl1KSBbMTYxMzUyMl0KKy0gUmVtb3ZlIGR1cGxpY2F0ZSBjb25maWdzIGFjcm9vcyBm ZWRvcmEsIGFyayBhbmQgY29tbW9uIChEb24gWmlja3VzKQorLSBDb21iaW5lIGR1cGxpY2F0ZSBj b25maWdzIGFjcm9zcyBhcmsgYW5kIGZlZG9yYSBpbnRvIGNvbW1vbiAoRG9uIFppY2t1cykKKy0g Y29tbW9uL2FyazogY2xlYW51cCBhbmQgdW5pZnkgdGhlIHBhcnBvcnQgY29uZmlncyAoUGV0ZXIg Um9iaW5zb24pCistIGlvbW11L3Z0LWQ6IGVuYWJsZSBJTlRFTF9JRFhEX1NWTSBmb3IgYm90aCBm ZWRvcmEgYW5kIHJoZWwgKEplcnJ5IFNuaXRzZWxhYXIpCistIFJFREhBVDogY29yZXNpZ2h0OiBl dG00eDogRGlzYWJsZSBjb3Jlc2lnaHQgb24gSFBFIEFwb2xsbyA3MCAoSmVyZW15IExpbnRvbikK Ky0gY29uZmlncy9jb21tb24vZ2VuZXJpYzogZGlzYWJsZSBDT05GSUdfU0xBQl9NRVJHRV9ERUZB VUxUIChSYWZhZWwgQXF1aW5pKQorLSBSZW1vdmUgX2xlZ2FjeV9jb21tb25fc3VwcG9ydCAoSnVz dGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L21vZC1ibGFja2xpc3Quc2g6IEZpeCBmbG9wcHkgYmxh Y2tsaXN0aW5nIChIYW5zIGRlIEdvZWRlKQorLSBOZXcgY29uZmlncyBpbiBmcy9wc3RvcmUgKENL SUBHaXRMYWIpCistIE5ldyBjb25maWdzIGluIGFyY2gvcG93ZXJwYyAoRmVkb3JhIEtlcm5lbCBU ZWFtKQorLSBjb25maWdzOiBlbmFibGUgQlBGIExTTSBvbiBGZWRvcmEgYW5kIEFSSyAoT25kcmVq IE1vc25hY2VrKQorLSBjb25maWdzOiBjbGVhbiB1cCBMU00gY29uZmlncyAoT25kcmVqIE1vc25h Y2VrKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL3BsYXRmb3JtIChDS0lAR2l0TGFiKQorLSBO ZXcgY29uZmlncyBpbiBkcml2ZXJzL2Zpcm13YXJlIChDS0lAR2l0TGFiKQorLSBOZXcgY29uZmln cyBpbiBkcml2ZXJzL21haWxib3ggKEZlZG9yYSBLZXJuZWwgVGVhbSkKKy0gTmV3IGNvbmZpZ3Mg aW4gZHJpdmVycy9uZXQvcGh5IChKdXN0aW4gTS4gRm9yYmVzKQorLSBVcGRhdGUgQ09ORklHX0RN X01VTFRJUEFUSF9JT0EgKEF1Z3VzdG8gQ2FyaW5naSkKKy0gTmV3IGNvbmZpZ3MgaW4gbW0vS2Nv bmZpZyAoQ0tJQEdpdExhYikKKy0gTmV3IGNvbmZpZ3MgaW4gYXJjaC9wb3dlcnBjIChKZXJlbXkg Q2xpbmUpCistIE5ldyBjb25maWdzIGluIGFyY2gvcG93ZXJwYyAoSmVyZW15IENsaW5lKQorLSBO ZXcgY29uZmlncyBpbiBkcml2ZXJzL2lucHV0IChGZWRvcmEgS2VybmVsIFRlYW0pCistIE5ldyBj b25maWdzIGluIG5ldC9ibHVldG9vdGggKEp1c3RpbiBNLiBGb3JiZXMpCistIE5ldyBjb25maWdz IGluIGRyaXZlcnMvY2xrIChGZWRvcmEgS2VybmVsIFRlYW0pCistIE5ldyBjb25maWdzIGluIGlu aXQvS2NvbmZpZyAoSmVyZW15IENsaW5lKQorLSByZWRoYXQ6IGFsbG93IHJ1bm5pbmcgZmVkb3Jh LWNvbmZpZ3MgYW5kIHJoLWNvbmZpZ3MgdGFyZ2V0cyBvdXRzaWRlIG9mIHJlZGhhdC8gKEhlcnRv biBSLiBLcnplc2luc2tpKQorLSBhbGw6IHVuaWZ5IHRoZSBkaXNhYmxlIG9mIGdvbGRmaXNoIChh bmRyb2lkIGVtdWxhdGlvbiBwbGF0Zm9ybSkgKFBldGVyIFJvYmluc29uKQorLSBjb21tb246IG1p bm9yIGNsZWFudXAvZGUtZHVwZSBvZiBkbWEvZG1hYnVmIGRlYnVnIGNvbmZpZ3MgKFBldGVyIFJv Ymluc29uKQorLSBjb21tb24vYXJrOiB0aGVzZSBkcml2ZXJzL2FyY2hlcyB3ZXJlIHJlbW92ZWQg aW4gNS4xMiAoUGV0ZXIgUm9iaW5zb24pCistIENvcnJlY3Qga2VybmVsLWRldmVsIG1ha2UgcHJl cGFyZSBidWlsZCBmb3IgNS4xMi4gKFBhdWxvIEUuIENhc3RybykKKy0gcmVkaGF0OiBhZGQgaW5p dGlhbCBzdXBwb3J0IGZvciBjZW50b3Mgc3RyZWFtIGRpc3QtZ2l0IHN5bmMgb24gTWFrZWZpbGVz IChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBDT05GSUdf U0NIRURfU1RBQ0tfRU5EX0NIRUNLIGZvciBGZWRvcmEgYW5kIEFSSyAoSm9zaCBQb2ltYm9ldWYp IFsxODU2MTc0XQorLSBDT05GSUdfVkZJTyBub3cgc2VsZWN0cyBJT01NVV9BUEkgaW5zdGVhZCBv ZiBkZXBlbmRpbmcgb24gaXQsIGNhdXNpbmcgc2V2ZXJhbCBjb25maWcgbWlzbWF0Y2hlcyBmb3Ig dGhlIHpmY3BkdW1wIGtlcm5lbCAoSnVzdGluIE0uIEZvcmJlcykKKy0gVHVybiBvZmYgd2Vhay1t b2R1bGVzIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogZW5hYmxlIENP TkZJR19GV19MT0FERVJfQ09NUFJFU1MgZm9yIEFSSyAoSGVydG9uIFIuIEtyemVzaW5za2kpIFsx OTM5MDk1XQorLSBGZWRvcmE6IGZpbHRlcnM6IHVwZGF0ZSB0byBtb3ZlIGRmbC1lbWlmIHRvIG1v ZHVsZXMgKFBldGVyIFJvYmluc29uKQorLSBkcm9wIGR1cGxpY2F0ZSBERVZGUkVRX0dPVl9TSU1Q TEVfT05ERU1BTkQgY29uZmlnIChQZXRlciBSb2JpbnNvbikKKy0gZWZpOiBUaGUgRUZJX1ZBUlMg aXMgbGVnYWN5IGFuZCBub3cgeDg2IG9ubHkgKFBldGVyIFJvYmluc29uKQorLSBjb21tb246IGVu YWJsZSBSVENfU1lTVE9IQyB0byBzdXBwbGVtZW50IHVwZGF0ZV9wZXJzaXN0ZW50X2Nsb2NrNjQg KFBldGVyIFJvYmluc29uKQorLSBnZW5lcmljOiBhcm06IGVuYWJsZSBTQ01JIGZvciBhbGwgb3B0 aW9ucyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogdGhlIFBDSF9DQU4gZHJpdmVyIGlzIHg4 Ni0zMiBvbmx5IChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBkaXNhYmxlIGxlZ2FjeSBDQU4g ZGV2aWNlIHN1cHBvcnQgKFBldGVyIFJvYmluc29uKQorLSBjb21tb246IEVuYWJsZSBNaWNyb2No aXAgTUNQMjUxeC9NQ1AyNTF4RkQgQ0FOIGNvbnRyb2xsZXJzIChQZXRlciBSb2JpbnNvbikKKy0g Y29tbW9uOiBCb3NjaCBNQ0FOIHN1cHBvcnQgZm9yIEludGVsIEVsa2hhcnQgTGFrZSAoUGV0ZXIg Um9iaW5zb24pCistIGNvbW1vbjogZW5hYmxlIENBTl9QRUFLX1BDSUVGRCBQQ0ktRSBkcml2ZXIg KFBldGVyIFJvYmluc29uKQorLSBjb21tb246IGRpc2FibGUgQ0FOX1BFQUtfUENJRUMgUENBTi1F eHByZXNzQ2FyZCAoUGV0ZXIgUm9iaW5zb24pCistIGNvbW1vbjogZW5hYmxlIGNvbW1vbiBDQU4g bGF5ZXIgMiBwcm90b2NvbHMgKFBldGVyIFJvYmluc29uKQorLSBhcms6IGRpc2FibGUgQ0FOX0xF RFMgb3B0aW9uIChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhOiBUdXJuIG9uIFNORF9TT0NfSU5U RUxfU0tZTEFLRV9IREFVRElPX0NPREVDIG9wdGlvbiAoSGFucyBkZSBHb2VkZSkKKy0gRmVkb3Jh OiBlbmFibGUgbW9kdWxlcyBmb3Igc3VyZmFjZSBkZXZpY2VzIChEYXZlIE9sc3Rob29ybikKKy0g VHVybiBvbiBTTkRfU09DX0lOVEVMX1NPVU5EV0lSRV9TT0ZfTUFDSCBmb3IgRmVkb3JhIGFnYWlu IChKdXN0aW4gTS4gRm9yYmVzKQorLSBjb21tb246IGZpeCBXTTg4MDQgY29kZWMgZGVwZW5kZW5j aWVzIChQZXRlciBSb2JpbnNvbikKKy0gQnVpbGQgU0VSSU9fU0VSUE9SVCBhcyBhIG1vZHVsZSAo UGV0ZXIgUm9iaW5zb24pCistIGlucHV0OiB0b3VjaHNjcmVlbjogbW92ZSBFTE8gYW5kIFdhY29t IHNlcmlhbCB0b3VjaHNjcmVlbnMgdG8geDg2IChQZXRlciBSb2JpbnNvbikKKy0gU3luYyBzZXJp byB0b3VjaHNjcmVlbnMgZm9yIG5vbiB4ODYgYXJjaGl0ZWN0dXJlcyB0byB0aGUgc2FtZSBhcyBB UksgKFBldGVyIFJvYmluc29uKQorLSBPbmx5IGVuYWJsZSBTRVJJT19MSUJQUzIgb24geDg2IChQ ZXRlciBSb2JpbnNvbikKKy0gT25seSBlbmFibGUgUEMga2V5Ym9hcmQgY29udHJvbGxlciBhbmQg YXNzb2NpYXRlZCBrZXlib2FyZCBvbiB4ODYgKFBldGVyIFJvYmluc29uKQorLSBHZW5lcmljOiBN b3VzZTogVHdlYWsgZ2VuZXJpYyBzZXJpYWwgbW91c2Ugb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24p CistIE9ubHkgZW5hYmxlIFBTMiBNb3VzZSBvcHRpb25zIG9uIHg4NiAoUGV0ZXIgUm9iaW5zb24p CistIERpc2FibGUgYmx1ZXRvb3RoIGhpZ2hzcGVlZCBieSBkZWZhdWx0IChQZXRlciBSb2JpbnNv bikKKy0gRmVkb3JhOiBBIGZldyBtb3JlIGdlbmVyYWwgdXBkYXRlcyBmb3IgNS4xMiB3aW5kb3cg KFBldGVyIFJvYmluc29uKQorLSBGZWRvcmE6IFVwZGF0ZXMgZm9yIDUuMTIgbWVyZ2Ugd2luZG93 IChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhOiByZW1vdmUgZGVhZCBvcHRpb25zIHRoYXQgd2Vy ZSByZW1vdmVkIHVwc3RyZWFtIChQZXRlciBSb2JpbnNvbikKKy0gcmVkaGF0OiByZW1vdmUgQ09O RklHX0RSTV9QQU5FTF9YSU5HQkFOR0RBX1hCRDU5OSAoSGVydG9uIFIuIEtyemVzaW5za2kpCist IE5ldyBjb25maWdzIGluIGFyY2gvcG93ZXJwYyAoRmVkb3JhIEtlcm5lbCBUZWFtKQorLSBUdXJu IG9uIENPTkZJR19QUENfUVVFVUVEX1NQSU5MT0NLUyBhcyBpdCBpcyBkZWZhdWx0IHVwc3RyZWFt IG5vdyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVXBkYXRlIHBlbmRpbmctY29tbW9uIGNvbmZpZ3Mg dG8gYWRkcmVzcyBuZXcgdXBzdHJlYW0gY29uZmlnIGRlcHMgKEp1c3RpbiBNLiBGb3JiZXMpCist IHJwbXNwZWM6IHNoaXAgZ3Bpby13YXRjaC5kZWJ1ZyBpbiB0aGUgcHJvcGVyIGRlYnVnaW5mbyBw YWNrYWdlIChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gUmVtb3ZlZCBkZXNjcmlwdGlvbiB0ZXh0 IGFzIGEgY29tbWVudCBjb25mdXNlcyB0aGUgY29uZmlnIGdlbmVyYXRpb24gKEp1c3RpbiBNLiBG b3JiZXMpCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvZG1hLWJ1ZiAoSmVyZW15IENsaW5lKQor LSBGZWRvcmE6IEFSTXY3OiBidWlsZCBmb3IgMTYgQ1BVcy4gKFBldGVyIFJvYmluc29uKQorLSBG ZWRvcmE6IG9ubHkgZW5hYmxlIERFQlVHX0hJR0hNRU0gb24gZGVidWcga2VybmVscyAoUGV0ZXIg Um9iaW5zb24pCistIHByb2Nlc3NfY29uZmlncy5zaDogZml4IGZpbmQveGFyZ3MgZGF0YSBmbG93 IChPbmRyZWogTW9zbmFjZWspCistIEZlZG9yYSBjb25maWcgdXBkYXRlIChKdXN0aW4gTS4gRm9y YmVzKQorLSBmZWRvcmE6IG1pbm9yIGFybSBzb3VuZCBjb25maWcgdXBkYXRlcyAoUGV0ZXIgUm9i aW5zb24pCistIEZpeCB0cmFpbGluZyB3aGl0ZSBzcGFjZSBpbiByZWRoYXQvY29uZmlncy9mZWRv cmEvZ2VuZXJpYy9DT05GSUdfU05EX0lOVEVMX0JZVF9QUkVGRVJfU09GIChKdXN0aW4gTS4gRm9y YmVzKQorLSBBZGQgYSByZWRoYXQvcmViYXNlLW5vdGVzLnR4dCBmaWxlIChIYW5zIGRlIEdvZWRl KQorLSBUdXJuIG9uIFNORF9JTlRFTF9CWVRfUFJFRkVSX1NPRiBmb3IgRmVkb3JhIChIYW5zIGRl IEdvZWRlKQorLSBDSTogRHJvcCBNUiBJRCBmcm9tIHRoZSBuYW1lIHZhcmlhYmxlIChWZXJvbmlr YSBLYWJhdG92YSkKKy0gcmVkaGF0OiBhZGQgRFVQIGFuZCBrcGF0Y2ggY2VydGlmaWNhdGVzIHRv IHN5c3RlbSB0cnVzdGVkIGtleXMgZm9yIFJIRUwgYnVpbGQgKEhlcnRvbiBSLiBLcnplc2luc2tp KQorLSBUaGUgY29tbWVudHMgaW4gQ09ORklHX1VTQl9SVEw4MTUzX0VDTSBhY3R1YWxseSB0dXJu IG9mZiBDT05GSUdfVVNCX1JUTDgxNTIgKEp1c3RpbiBNLiBGb3JiZXMpCistIFVwZGF0ZSBDS0kg cGlwZWxpbmUgcHJvamVjdCAoVmVyb25pa2EgS2FiYXRvdmEpCistIFR1cm4gb2ZmIGFkZGl0aW9u YWwgS0FTQU4gb3B0aW9ucyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSZW5hbWUg dGhlIG1hc3RlciBicmFuY2ggdG8gcmF3aGlkZSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVz KQorLSBNYWtlZmlsZSB0YXJnZXRzIGZvciBwYWNraXQgaW50ZWdyYXRpb24gKEJlbiBDcm9ja2Vy KQorLSBUdXJuIG9mZiBLQVNBTiBmb3IgcmF3aGlkZSBkZWJ1ZyBidWlsZHMgKEp1c3RpbiBNLiBG b3JiZXMpCistIE5ldyBjb25maWdzIGluIGFyY2gvYXJtNjQgKEp1c3RpbiBGb3JiZXMpCistIFJl bW92ZSBkZXByZWNhdGVkIEludGVsIE1JQyBjb25maWcgb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24p CistIHJlZGhhdDogcmVwbGFjZSBpbmxpbmUgYXdrIHNjcmlwdCB3aXRoIGdlbmxvZy5weSBjYWxs IChIZXJ0b24gUi4gS3J6ZXNpbnNraSkKKy0gcmVkaGF0OiBhZGQgZ2VubG9nLnB5IHNjcmlwdCAo SGVydG9uIFIuIEtyemVzaW5za2kpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlIC0gZml4IHVzZV92 ZHNvIHVzYWdlIChCZW4gQ3JvY2tlcikKKy0gcmVkaGF0OiByZW1vdmUgcmVtYWluaW5nIHJlZmVy ZW5jZXMgb2YgQ09ORklHX1JIX0RJU0FCTEVfREVQUkVDQVRFRCAoSGVydG9uIFIuIEtyemVzaW5z a2kpCistIFR1cm4gb2ZmIHZkc29faW5zdGFsbCBmb3IgcHBjIChKdXN0aW4gTS4gRm9yYmVzKQor LSBSZW1vdmUgYnBmLWhlbHBlcnMuNyBmcm9tIGJwZnRvb2wgcGFja2FnZSAoSmlyaSBPbHNhKQor LSBOZXcgY29uZmlncyBpbiBsaWIvS2NvbmZpZy5kZWJ1ZyAoRmVkb3JhIEtlcm5lbCBUZWFtKQor LSBUdXJuIG9mZiBDT05GSUdfVklSVElPX0NPTlNPTEUgZm9yIHMzOTB4IHpmY3BkdW1wIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL2NsayAoSnVzdGluIE0uIEZv cmJlcykKKy0gS2VlcCBWSVJUSU9fQ09OU09MRSBvbiBzMzkweCBhdmFpbGFibGUuIChKYWt1YiDE jGFqa2EpCistIE5ldyBjb25maWdzIGluIGxpYi9LY29uZmlnLmRlYnVnIChKZXJlbXkgQ2xpbmUp CistIEZlZG9yYSA1LjExIGNvbmZpZyB1cGRhdGVzIHBhcnQgNCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gRmVkb3JhIDUuMTEgY29uZmlnIHVwZGF0ZXMgcGFydCAzIChKdXN0aW4gTS4gRm9yYmVzKQor LSBGZWRvcmEgNS4xMSBjb25maWcgdXBkYXRlcyBwYXJ0IDIgKEp1c3RpbiBNLiBGb3JiZXMpCist IFVwZGF0ZSBpbnRlcm5hbCAodGVzdCkgbW9kdWxlIGxpc3QgZnJvbSBSSEVMLTggKEpvZSBMYXdy ZW5jZSkgWzE5MTUwNzNdCistIEZpeCBVU0JfWEhDSV9QQ0kgcmVncmVzc2lvbiAoSnVzdGluIE0u IEZvcmJlcykKKy0gZmVkb3JhOiBmaXhlcyBmb3IgQVJNdjcgYnVpbGQgaXNzdWUgYnkgZGlzYWJs aW5nIEhJR0hQVEUgKFBldGVyIFJvYmluc29uKQorLSBhbGw6IHMzOTB4OiBJbmNyZWFzZSBDT05G SUdfUENJX05SX0ZVTkNUSU9OUyB0byA1MTIgKCMxODg4NzM1KSAoRGFuIEhvcsOhaykKKy0gRmVk b3JhIDUuMTEgY29uZmlncyBwdCAxIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQ6IGF2b2lk IGNvbmZsaWN0IHdpdGggbW9kLWJsYWNrbGlzdC5zaCBhbmQgcmVsZWFzZWRfa2VybmVsIGRlZmlu ZWQgKEhlcnRvbiBSLiBLcnplc2luc2tpKQorLSByZWRoYXQ6IGhhbmRsZSBjZXJ0aWZpY2F0ZSBm aWxlcyBjb25kaXRpb25hbGx5IGFzIGRvbmUgZm9yIHNyYy5ycG0gKEhlcnRvbiBSLiBLcnplc2lu c2tpKQorLSBzcGVjZmlsZTogYWRkICUlez9fc21wX21mbGFnc30gdG8gIm1ha2UgaGVhZGVyc19p bnN0YWxsIiBpbiB0b29scy90ZXN0aW5nL3NlbGZ0ZXN0cyAoRGVueXMgVmxhc2Vua28pCistIHNw ZWNmaWxlOiBhZGQgJSV7P19zbXBfbWZsYWdzfSB0byAibWFrZSBzYW1wbGVzL2JwZi8iIChEZW55 cyBWbGFzZW5rbykKKy0gUnVuIE1SIHRlc3RpbmcgaW4gQ0tJIHBpcGVsaW5lIChWZXJvbmlrYSBL YWJhdG92YSkKKy0gUmV3b3JkIGNvbW1lbnQgKE5pY29sYXMgQ2hhdXZldCkKKy0gQWRkIHdpdGhf Y3Jvc3NfYXJtIGNvbmRpdGlvbmFsIChOaWNvbGFzIENoYXV2ZXQpCistIFJlZGVmaW5lcyBfX3N0 cmlwIGlmIHdpdGhfY3Jvc3MgKE5pY29sYXMgQ2hhdXZldCkKKy0gZmVkb3JhOiBvbmx5IGVuYWJs ZSBBQ1BJX0NPTkZJR0ZTLCBBQ1BJX0NVU1RPTV9NRVRIT0QgaW4gZGVidWcga2VybmVscyAoUGV0 ZXIgUm9iaW5zb24pCistIGZlZG9yYTogVXNlciB0aGUgc2FtZSBFRklfQ1VTVE9NX1NTRFRfT1ZF UkxBWVMgYXMgQVJLIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBhbGwgYXJjaGVzL2tlcm5lbHMg ZW5hYmxlIHRoZSBzYW1lIERNSSBvcHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gYWxsOiBtb3Zl IFNFTlNPUlNfQUNQSV9QT1dFUiB0byBjb21tb24vZ2VuZXJpYyAoUGV0ZXIgUm9iaW5zb24pCist IGZlZG9yYTogUENJRV9ISVNJX0VSUiBpcyBhbHJlYWR5IGluIGNvbW1vbiAoUGV0ZXIgUm9iaW5z b24pCistIGFsbDogYWxsIEFDUEkgcGxhdGZvcm1zIGVuYWJsZSBBVEFfQUNQSSBzbyBtb3ZlIGl0 IHRvIGNvbW1vbiAoUGV0ZXIgUm9iaW5zb24pCistIGFsbDogeDg2OiBtb3ZlIHNoYXJlZCB4ODYg YWNwaSBjb25maWcgb3B0aW9ucyB0byBnZW5lcmljIChQZXRlciBSb2JpbnNvbikKKy0gQWxsOiB4 ODY6IE1vdmUgQUNQSV9WSURFTyB0byBjb21tb24veDg2IChQZXRlciBSb2JpbnNvbikKKy0gQWxs OiB4ODY6IEVuYWJsZSBBQ1BJX0RQVEYgKEludGVsIERQVEYpIChQZXRlciBSb2JpbnNvbikKKy0g QWxsOiBlbmFibGUgQUNQSV9CR1JUIGZvciBhbGwgQUNQSSBwbGF0Zm9ybXMuIChQZXRlciBSb2Jp bnNvbikKKy0gQWxsOiBPbmx5IGJ1aWxkIEFDUElfRUNfREVCVUdGUyBmb3IgZGVidWcga2VybmVs cyAoUGV0ZXIgUm9iaW5zb24pCistIEFsbDogRGlzYWJsZSBJbnRlbCBDbGFzc21hdGUgUEMgQUNQ SV9DTVBDIG9wdGlvbiAoUGV0ZXIgUm9iaW5zb24pCistIGNsZWFudXA6IEFDUElfUFJPQ0ZTX1BP V0VSIHdhcyByZW1vdmVkIHVwc3RyZWFtIChQZXRlciBSb2JpbnNvbikKKy0gQWxsOiBBQ1BJOiBE ZS1kdXBlIHRoZSBBQ1BJIG9wdGlvbnMgdGhhdCBhcmUgdGhlIHNhbWUgYWNyb3NzIGFyay9mZWRv cmEgb24geDg2L2FybSAoUGV0ZXIgUm9iaW5zb24pCistIEVuYWJsZSB0aGUgdmttcyBtb2R1bGUg aW4gRmVkb3JhIChKZXJlbXkgQ2xpbmUpCistIEZlZG9yYTogYXJtIHVwZGF0ZXMgZm9yIDUuMTEg YW5kIGdlbmVyYWwgY3Jvc3MgRmVkb3JhIGNsZWFudXBzIChQZXRlciBSb2JpbnNvbikKKy0gQWRk IGdjYy1jKysgdG8gQnVpbGRSZXF1aXJlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gVXBkYXRlIENP TkZJR19LQVNBTl9IV19UQUdTIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRvcmE6IGFybTogbW92 ZSBnZW5lcmljIHBvd2VyIG9mZi9yZXNldCB0byBhbGwgYXJtIChQZXRlciBSb2JpbnNvbikKKy0g ZmVkb3JhOiBBUk12NzogYnVpbGQgaW4gREVWRlJFUV9HT1ZfU0lNUExFX09OREVNQU5EIHVudGls IEkgd29yayBvdXQgd2h5IGl0J3MgY2hhbmdlZCAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTog Y2xlYW51cCBqb3lzdGlja19hZGMgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IHVwZGF0ZSBz b21lIGRpc3BsYXkgb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogYXJtOiBlbmFi bGUgVEkgUFJVIG9wdGlvbnMgKFBldGVyIFJvYmluc29uKQorLSBmZWRvcmE6IGFybTogbWlub3Ig ZXh5bm9zIHBsYWZvcm0gdXBkYXRlcyAoUGV0ZXIgUm9iaW5zb24pCistIGFybTogU29DOiBkaXNh YmxlIFRvc2hpYmEgVmlzY29udGkgU29DIChQZXRlciBSb2JpbnNvbikKKy0gY29tbW9uOiBkaXNh YmxlIEFSQ0hfQkNNNDkwOCAoTkZDKSAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogbWlub3Ig YXJtIGNvbmZpZyB1cGRhdGVzIChQZXRlciBSb2JpbnNvbikKKy0gZmVkb3JhOiBlbmFibGUgVGVn cmEgMjM0IFNvQyAoUGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogYXJtOiBlbmFibGUgbmV3IEhp a2V5IDN4eCBvcHRpb25zIChQZXRlciBSb2JpbnNvbikKKy0gRmVkb3JhOiBVU0IgdXBkYXRlcyAo UGV0ZXIgUm9iaW5zb24pCistIGZlZG9yYTogZW5hYmxlIHRoZSBHTlNTIHJlY2VpdmVyIHN1YnN5 c3RlbSAoUGV0ZXIgUm9iaW5zb24pCistIFJlbW92ZSBQT1dFUl9BVlMgYXMgbm8gbG9uZ2VyIHVw c3RyZWFtIChQZXRlciBSb2JpbnNvbikKKy0gQ2xlYW51cCBSRVNFVF9SQVNQQkVSUllQSSAoUGV0 ZXIgUm9iaW5zb24pCistIENsZWFudXAgR1BJT19DREVWX1YxIG9wdGlvbnMuIChQZXRlciBSb2Jp bnNvbikKKy0gZmVkb3JhOiBhcm0gY3J5cHRvIHVwZGF0ZXMgKFBldGVyIFJvYmluc29uKQorLSBD T05GSUdfS0FTQU5fSFdfVEFHUyBmb3IgYWFyY2g2NCAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVk b3JhOiBjbGVhbnVwIFBDTUNJQSBjb25maWdzLCBtb3ZlIHRvIHg4NiAoUGV0ZXIgUm9iaW5zb24p CistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvcnRjIChGZWRvcmEgS2VybmVsIFRlYW0pCistIHJl ZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX0dDQ19QTFVHSU5fU1RSVUNUTEVBS19CWVJFRl9B TEwgKEpvc2ggUG9pbWJvZXVmKSBbMTg1NjE3Nl0KKy0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBD T05GSUdfR0NDX1BMVUdJTl9TVFJVQ1RMRUFLIChKb3NoIFBvaW1ib2V1ZikgWzE4NTYxNzZdCist IHJlZGhhdC9jb25maWdzOiBFbmFibGUgQ09ORklHX0dDQ19QTFVHSU5TIG9uIEFSSyAoSm9zaCBQ b2ltYm9ldWYpIFsxODU2MTc2XQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19LQVNB TiBvbiBGZWRvcmEgKEpvc2ggUG9pbWJvZXVmKSBbMTg1NjE3Nl0KKy0gTmV3IGNvbmZpZ3MgaW4g aW5pdC9LY29uZmlnIChGZWRvcmEgS2VybmVsIFRlYW0pCistIGJ1aWxkX2NvbmZpZ3Muc2g6IEZp eCBzeW50YXggZmxhZ2dlZCBieSBzaGVsbGNoZWNrIChCZW4gQ3JvY2tlcikKKy0gZ2Vuc3BlYy5z aDogRml4IHN5bnRheCBmbGFnZ2VkIGJ5IHNoZWxsY2hlY2sgKEJlbiBDcm9ja2VyKQorLSBtb2Qt YmxhY2tsaXN0LnNoOiBGaXggc3ludGF4IGZsYWdnZWQgYnkgc2hlbGxjaGVjayAoQmVuIENyb2Nr ZXIpCistIEVuYWJsZSBTcGVha3VwIGFjY2Vzc2liaWxpdHkgZHJpdmVyIChKdXN0aW4gTS4gRm9y YmVzKQorLSBOZXcgY29uZmlncyBpbiBpbml0L0tjb25maWcgKEZlZG9yYSBLZXJuZWwgVGVhbSkK Ky0gRml4IGZlZG9yYSBjb25maWcgbWlzbWF0Y2ggZHVlIHRvIGRlcCBjaGFuZ2VzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL2NyeXB0byAoSmVyZW15IENsaW5l KQorLSBSZW1vdmUgZHVwbGljYXRlIEVORVJHWV9NT0RFTCBjb25maWdzIChQZXRlciBSb2JpbnNv bikKKy0gVGhpcyBpcyBzZWxlY3RlZCBieSBQQ0lFX1FDT00gc28gbXVzdCBtYXRjaCAoSnVzdGlu IE0uIEZvcmJlcykKKy0gZHJvcCB1bnVzZWQgQkFDS0xJR0hUX0dFTkVSSUMgKFBldGVyIFJvYmlu c29uKQorLSBSZW1vdmUgY3AgaW5zdHJ1Y3Rpb24gYWxyZWFkeSBoYW5kbGVkIGluIGluc3RydWN0 aW9uIGJlbG93LiAoUGF1bG8gRS4gQ2FzdHJvKQorLSBBZGQgYWxsIHRoZSBkZXBlbmRlbmNpZXMg Z2xlYW5lZCBmcm9tIHJ1bm5pbmcgYG1ha2UgcHJlcGFyZWAgb24gYSBibG9hdGVkIGRldmVsIGtl cm5lbC4gKFBhdWxvIEUuIENhc3RybykKKy0gQWRkIHRvb2xzIHRvIHBhdGggbWFuZ2xpbmcgc2Ny aXB0LiAoUGF1bG8gRS4gQ2FzdHJvKQorLSBSZW1vdmUgZHVwbGljYXRlIGNwIHN0YXRlbWVudCB3 aGljaCBpcyBhbHNvIG5vdCBzcGVjaWZpYyB0byB4ODYuIChQYXVsbyBFLiBDYXN0cm8pCistIENv cnJlY3Qgb3JjX3R5cGVzIGZhaWx1cmUgd2hpbHN0IHJ1bm5pbmcgYG1ha2UgcHJlcGFyZWAgaHR0 cHM6Ly9idWd6aWxsYS5yZWRoYXQuY29tL3Nob3dfYnVnLmNnaT9pZD0xODgyODU0IChQYXVsbyBF LiBDYXN0cm8pCistIHJlZGhhdDogYXJrOiBlbmFibGUgQ09ORklHX0lLSEVBREVSUyAoSmlyaSBP bHNhKQorLSBBZGQgbWlzc2luZyAnJCcgc2lnbiB0byAoR0lUKSBpbiByZWRoYXQvTWFrZWZpbGUg KEF1Z3VzdG8gQ2FyaW5naSkKKy0gUmVtb3ZlIGZpbHRlcmRpZmYgYW5kIHVzZSBuYXRpdmUgZ2l0 IGluc3RlYWQgKERvbiBaaWNrdXMpCistIE5ldyBjb25maWdzIGluIG5ldC9zY2hlZCAoSnVzdGlu IE0uIEZvcmJlcykKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9tZmQgKENLSUBHaXRMYWIpCist IE5ldyBjb25maWdzIGluIGRyaXZlcnMvbWZkIChGZWRvcmEgS2VybmVsIFRlYW0pCistIE5ldyBj b25maWdzIGluIGRyaXZlcnMvZmlybXdhcmUgKEZlZG9yYSBLZXJuZWwgVGVhbSkKKy0gVGVtcG9y YXJpbHkgYmFja291dCBwYXJhbGxlbCB4eiBzY3JpcHQgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJl ZGhhdDogZXhwbGljaXRseSBkaXNhYmxlIENPTkZJR19JTUFfQVBQUkFJU0VfU0lHTkVEX0lOSVQg KEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX0VWTV9MT0FEX1g1MDkg b24gQVJLIChCcnVubyBNZW5lZ3VlbGUpCistIHJlZGhhdDogZW5hYmxlIENPTkZJR19FVk1fQVRU Ul9GU1VVSUQgb24gQVJLIChCcnVubyBNZW5lZ3VlbGUpCistIHJlZGhhdDogZW5hYmxlIENPTkZJ R19FVk0gaW4gYWxsIGFyY2hlcyBhbmQgZmxhdm9ycyAoQnJ1bm8gTWVuZWd1ZWxlKQorLSByZWRo YXQ6IGVuYWJsZSBDT05GSUdfSU1BX0xPQURfWDUwOSBvbiBBUksgKEJydW5vIE1lbmVndWVsZSkK Ky0gcmVkaGF0OiBzZXQgQ09ORklHX0lNQV9ERUZBVUxUX0hBU0ggdG8gU0hBMjU2IChCcnVubyBN ZW5lZ3VlbGUpCistIHJlZGhhdDogZW5hYmxlIENPTkZJR19JTUFfU0VDVVJFX0FORF9PUl9UUlVT VEVEX0JPT1QgKEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX0lNQV9S RUFEX1BPTElDWSBvbiBBUksgKEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0OiBzZXQgZGVmYXVs dCBJTUEgdGVtcGxhdGUgZm9yIGFsbCBBUksgYXJjaGVzIChCcnVubyBNZW5lZ3VlbGUpCistIHJl ZGhhdDogZW5hYmxlIENPTkZJR19JTUFfREVGQVVMVF9IQVNIX1NIQTI1NiBmb3IgYWxsIGZsYXZv cnMgKEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0OiBkaXNhYmxlIENPTkZJR19JTUFfREVGQVVM VF9IQVNIX1NIQTEgKEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX0lN QV9BUkNIX1BPTElDWSBmb3IgcHBjIGFuZCB4ODYgKEJydW5vIE1lbmVndWVsZSkKKy0gcmVkaGF0 OiBlbmFibGUgQ09ORklHX0lNQV9BUFBSQUlTRV9NT0RTSUcgKEJydW5vIE1lbmVndWVsZSkKKy0g cmVkaGF0OiBlbmFibGUgQ09ORklHX0lNQV9BUFBSQUlTRV9CT09UUEFSQU0gKEJydW5vIE1lbmVn dWVsZSkKKy0gcmVkaGF0OiBlbmFibGUgQ09ORklHX0lNQV9BUFBSQUlTRSAoQnJ1bm8gTWVuZWd1 ZWxlKQorLSByZWRoYXQ6IGVuYWJsZSBDT05GSUdfSU5URUdSSVRZIGZvciBhYXJjaDY0IChCcnVu byBNZW5lZ3VlbGUpCistIGtlcm5lbDogVXBkYXRlIHNvbWUgbWlzc2luZyBLQVNBTi9LQ1NBTiBv cHRpb25zIChKZXJlbXkgTGludG9uKQorLSBrZXJuZWw6IEVuYWJsZSBjb3Jlc2lnaHQgb24gYWFy Y2g2NCAoSmVyZW15IExpbnRvbikKKy0gVXBkYXRlIENPTkZJR19JTkVUNl9FU1BJTlRDUCAoSnVz dGluIEZvcmJlcykKKy0gTmV3IGNvbmZpZ3MgaW4gbmV0L2lwdjYgKEp1c3RpbiBNLiBGb3JiZXMp CistIGZlZG9yYTogbW92ZSBDT05GSUdfUlRDX05WTUVNIG9wdGlvbnMgZnJvbSBhcmsgdG8gY29t bW9uIChQZXRlciBSb2JpbnNvbikKKy0gY29uZmlnczogRW5hYmxlIENPTkZJR19ERUJVR19JTkZP X0JURiAoRG9uIFppY2t1cykKKy0gZmVkb3JhOiBzb21lIG1pbm9yIGFybSBhdWRpbyBjb25maWcg dHdlYWtzIChQZXRlciBSb2JpbnNvbikKKy0gU2hpcCB4cGFkIHdpdGggZGVmYXVsdCBtb2R1bGVz IG9uIEZlZG9yYSBhbmQgUkhFTCAoQmFzdGllbiBOb2NlcmEpCistIEZlZG9yYTogT25seSBlbmFi bGUgbGVnYWN5IHNlcmlhbC9nYW1lIHBvcnQgam95c3RpY2tzIG9uIHg4NiAoUGV0ZXIgUm9iaW5z b24pCistIEZlZG9yYTogRW5hYmxlIHRoZSBvcHRpb25zIHJlcXVpcmVkIGZvciB0aGUgTGlicmVt IDUgUGhvbmUgKFBldGVyIFJvYmluc29uKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyBjaGFuZ2UgYmVjYXVzZSBDT05GSUdfRlNMX0RQ QUEyX0VUSCBub3cgc2VsZWN0cyBDT05GSUdfRlNMX1hHTUFDX01ESU8gKEp1c3RpbiBNLiBGb3Ji ZXMpCistIHJlZGhhdDogZ2VuZXJpYyAgZW5hYmxlIENPTkZJR19JTkVUX01QVENQX0RJQUcgKERh dmlkZSBDYXJhdHRpKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZSAoSnVzdGluIE0uIEZvcmJlcykK Ky0gRW5hYmxlIE5BTkRTSU0gZm9yIEZlZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gUmUtZW5h YmxlIENPTkZJR19BQ1BJX1RBQkxFX1VQR1JBREUgZm9yIEZlZG9yYSBzaW5jZSB1cHN0cmVhbSBk aXNhYmxlcyB0aGlzIGlmIHNlY3VyZWJvb3QgaXMgYWN0aXZlIChKdXN0aW4gTS4gRm9yYmVzKQor LSBBdGgxMWsgcmVsYXRlZCBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVk b3JhIGNvbmZpZyB1cGRhdGVzIGZvciBhdGgxMWsgKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4g b24gQVRIMTFLIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdDogZW5hYmxl IENPTkZJR19JTlRFTF9JT01NVV9TVk0gKEplcnJ5IFNuaXRzZWxhYXIpCistIE1vcmUgRmVkb3Jh IGNvbmZpZyBmaXhlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIDUuMTAgY29uZmlnIHVw ZGF0ZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZlZG9yYSA1LjEwIGNvbmZpZ3Mgcm91bmQgMSAo SnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9y YmVzKQorLSBBbGxvdyBrZXJuZWwtdG9vbHMgdG8gYnVpbGQgd2l0aG91dCBzZWxmdGVzdHMgKERv biBaaWNrdXMpCistIEFsbG93IGJ1aWxkaW5nIG9mIGtlcm5lbC10b29scyBzdGFuZGFsb25lIChE b24gWmlja3VzKQorLSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX0FDVF9DVElORk8g KERhdmlkZSBDYXJhdHRpKQorLSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX1NDSF9U RVFMIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBhcms6IGRpc2FibGUgQ09ORklHX05FVF9T Q0hfU0ZCIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBhcms6IGRpc2FibGUgQ09ORklHX05F VF9TQ0hfUUZRIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBhcms6IGRpc2FibGUgQ09ORklH X05FVF9TQ0hfUExVRyAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdDogYXJrOiBkaXNhYmxlIENP TkZJR19ORVRfU0NIX1BJRSAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdDogYXJrOiBkaXNhYmxl IENPTkZJR19ORVRfU0NIX0hIRiAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdDogYXJrOiBkaXNh YmxlIENPTkZJR19ORVRfU0NIX0RTTUFSSyAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdDogYXJr OiBkaXNhYmxlIENPTkZJR19ORVRfU0NIX0RSUiAoRGF2aWRlIENhcmF0dGkpCistIHJlZGhhdDog YXJrOiBkaXNhYmxlIENPTkZJR19ORVRfU0NIX0NPREVMIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVk aGF0OiBhcms6IGRpc2FibGUgQ09ORklHX05FVF9TQ0hfQ0hPS0UgKERhdmlkZSBDYXJhdHRpKQor LSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX1NDSF9DQlEgKERhdmlkZSBDYXJhdHRp KQorLSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX1NDSF9BVE0gKERhdmlkZSBDYXJh dHRpKQorLSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX0VNQVRDSCBhbmQgc3ViLXRh cmdldHMgKERhdmlkZSBDYXJhdHRpKQorLSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVU X0NMU19UQ0lOREVYIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBhcms6IGRpc2FibGUgQ09O RklHX05FVF9DTFNfUlNWUDYgKERhdmlkZSBDYXJhdHRpKQorLSByZWRoYXQ6IGFyazogZGlzYWJs ZSBDT05GSUdfTkVUX0NMU19SU1ZQIChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBhcms6IGRp c2FibGUgQ09ORklHX05FVF9DTFNfUk9VVEU0IChEYXZpZGUgQ2FyYXR0aSkKKy0gcmVkaGF0OiBh cms6IGRpc2FibGUgQ09ORklHX05FVF9DTFNfQkFTSUMgKERhdmlkZSBDYXJhdHRpKQorLSByZWRo YXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX0FDVF9TS0JNT0QgKERhdmlkZSBDYXJhdHRpKQor LSByZWRoYXQ6IGFyazogZGlzYWJsZSBDT05GSUdfTkVUX0FDVF9TSU1QIChEYXZpZGUgQ2FyYXR0 aSkKKy0gcmVkaGF0OiBhcms6IGRpc2FibGUgQ09ORklHX05FVF9BQ1RfTkFUIChEYXZpZGUgQ2Fy YXR0aSkKKy0gYXJtNjQvZGVmY29uZmlnOiBFbmFibGUgQ09ORklHX0tFWEVDX0ZJTEUgKEJodXBl c2ggU2hhcm1hKSBbMTgyMTU2NV0KKy0gcmVkaGF0L2NvbmZpZ3M6IENsZWFudXAgQ09ORklHX0NS WVBUT19TSEE1MTIgKFByYXJpdCBCaGFyZ2F2YSkKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9t ZmQgKEZlZG9yYSBLZXJuZWwgVGVhbSkKKy0gRml4IExUTyBpc3N1ZXMgd2l0aCBrZXJuZWwtdG9v bHMgKERvbiBaaWNrdXMpCistIFBvaW50IHBhdGhmaXggdG8gdGhlIG5ldyBsb2NhdGlvbiBmb3Ig Z2VuX2NvbXBpbGVfY29tbWFuZHMucHkgKEp1c3RpbiBNLiBGb3JiZXMpCistIGNvbmZpZ3M6IERp c2FibGUgQ09ORklHX1NFQ1VSSVRZX1NFTElOVVhfRElTQUJMRSAoT25kcmVqIE1vc25hY2VrKQor LSBbQXV0b21hdGljXSBIYW5kbGUgY29uZmlnIGRlcGVuZGVuY3kgY2hhbmdlcyAoRG9uIFppY2t1 cykKKy0gY29uZmlncy9pb21tdTogQWRkIGNvbmZpZyBjb21tZW50IHRvIGVtcHR5IENPTkZJR19T VU41MElfSU9NTVUgZmlsZSAoSmVycnkgU25pdHNlbGFhcikKKy0gTmV3IGNvbmZpZ3MgaW4ga2Vy bmVsL3RyYWNlIChGZWRvcmEgS2VybmVsIFRlYW0pCistIEZpeCBGZWRvcmEgY29uZmlnIGxvY2F0 aW9ucyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBjb25maWdzOiBlbmFibGUgQ09ORklHX0NSWVBUT19DVFM9eSBzbyBjdHMo Y2JjKGFlcykpIGlzIGF2YWlsYWJsZSBpbiBGSVBTIG1vZGUgKFZsYWRpcyBEcm9ub3YpIFsxODU1 MTYxXQorLSBQYXJ0aWFsIHJldmVydDogQWRkIG1hc3RlciBtZXJnZSBjaGVjayAoRG9uIFppY2t1 cykKKy0gVXBkYXRlIE1haW50YWluZXJzIGRvYyB0byByZWZsZWN0IHdvcmtmbG93IGNoYW5nZXMg KERvbiBaaWNrdXMpCistIFdJUDogcmVkaGF0L2RvY3M6IFVwZGF0ZSBkb2N1bWVudGF0aW9uIGZv ciBzaW5nbGUgYnJhbmNoIHdvcmtmbG93IChQcmFyaXQgQmhhcmdhdmEpCistIEFkZCBDT05GSUdf QVJNNjRfTVRFIHdoaWNoIGlzIG5vdCBwaWNrZWQgdXAgYnkgdGhlIGNvbmZpZyBzY3JpcHRzIGZv ciBzb21lIHJlYXNvbiAoSnVzdGluIE0uIEZvcmJlcykKKy0gRGlzYWJsZSBTcGVha3VwIHN5bnRo IERFQ0VYVCAoSnVzdGluIE0uIEZvcmJlcykKKy0gRW5hYmxlIFNwZWFrdXAgZm9yIEZlZG9yYSBz aW5jZSBpdCBpcyBvdXQgb2Ygc3RhZ2luZyAoSnVzdGluIE0uIEZvcmJlcykKKy0gTW9kaWZ5IHBh dGNobGlzdCBjaGFuZ2Vsb2cgb3V0cHV0IChEb24gWmlja3VzKQorLSBwcm9jZXNzX2NvbmZpZ3Mu c2g6IEZpeCBzeW50YXggZmxhZ2dlZCBieSBzaGVsbGNoZWNrIChCZW4gQ3JvY2tlcikKKy0gZ2Vu ZXJhdGVfYWxsX2NvbmZpZ3Muc2g6IEZpeCBzeW50YXggZmxhZ2dlZCBieSBzaGVsbGNoZWNrIChC ZW4gQ3JvY2tlcikKKy0gcmVkaGF0L3NlbGYtdGVzdDogSW5pdGlhbCBjb21taXQgKEJlbiBDcm9j a2VyKQorLSBhcmNoL3g4NjogUmVtb3ZlIHZlbmRvciBzcGVjaWZpYyBDUFUgSUQgY2hlY2tzIChQ cmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdDogUmVwbGFjZSBoYXJkd2FyZS5yZWRoYXQuY29tIGxp bmsgaW4gVW5zdXBwb3J0ZWQgbWVzc2FnZSAoUHJhcml0IEJoYXJnYXZhKSBbMTgxMDMwMV0KKy0g eDg2OiBGaXggY29tcGlsZSBpc3N1ZXMgd2l0aCByaF9jaGVja19zdXBwb3J0ZWQoKSAoRG9uIFpp Y2t1cykKKy0gS0VZUzogTWFrZSB1c2Ugb2YgcGxhdGZvcm0ga2V5cmluZyBmb3IgbW9kdWxlIHNp Z25hdHVyZSB2ZXJpZnkgKFJvYmVydCBIb2xtZXMpCistIEFSTTogdGVncmE6IHVzYiBubyByZXNl dCAoUGV0ZXIgUm9iaW5zb24pCistIGFybTogbWFrZSBDT05GSUdfSElHSFBURSBvcHRpb25hbCB3 aXRob3V0IENPTkZJR19FWFBFUlQgKEpvbiBNYXN0ZXJzKQorLSByZWRoYXQ6IHJoX2thYmk6IGRl ZHVwbGljYXRpb24gZnJpZW5kbHkgc3RydWN0cyAoSmlyaSBCZW5jKQorLSByZWRoYXQ6IHJoX2th YmkgYWRkIGEgY29tbWVudCB3aXRoIHdhcm5pbmcgYWJvdXQgUkhfS0FCSV9FWENMVURFIHVzYWdl IChKaXJpIEJlbmMpCistIHJlZGhhdDogcmhfa2FiaTogaW50cm9kdWNlIFJIX0tBQklfRVhURU5E X1dJVEhfU0laRSAoSmlyaSBCZW5jKQorLSByZWRoYXQ6IHJoX2thYmk6IEluZGlyZWN0IEVYVEVO RCBtYWNyb3Mgc28gbmVzdGluZyBvZiBvdGhlciBtYWNyb3Mgd2lsbCByZXNvbHZlLiAoRG9uIER1 dGlsZSkKKy0gcmVkaGF0OiByaF9rYWJpOiBGaXggUkhfS0FCSV9TRVRfU0laRSB0byB1c2UgZGVy ZWZlcmVuY2Ugb3BlcmF0b3IgKFRvbnkgQ2FtdXNvKQorLSByZWRoYXQ6IHJoX2thYmk6IEFkZCBt YWNyb3MgdG8gc2l6ZSBhbmQgZXh0ZW5kIHN0cnVjdHMgKFByYXJpdCBCaGFyZ2F2YSkKKy0gUmVt b3ZpbmcgT2Jzb2xldGUgaGJhIHBjaS1pZHMgZnJvbSByaGVsOCAoRGljayBLZW5uZWR5KSBbMTU3 MjMyMV0KKy0gbXB0c2FzOiBwY2ktaWQgdGFibGUgY2hhbmdlcyAoTGF1cmEgQWJib3R0KQorLSBt cHRzcGk6IHBjaS1pZCB0YWJsZSBjaGFuZ2VzIChMYXVyYSBBYmJvdHQpCistIHFsYTJ4eHg6IFJl bW92ZSBQQ0kgSURzIG9mIGRlcHJlY2F0ZWQgYWRhcHRlciAoSmVyZW15IENsaW5lKQorLSBocHNh OiByZW1vdmUgb2xkIGNjaXNzLWJhc2VkIHNtYXJ0YXJyYXkgcGNpIGlkcyAoSm9zZXBoIFN6Y3p5 cGVrKSBbMTQ3MTE4NV0KKy0ga2VybmVsOiBhZGQgU1VQUE9SVF9SRU1PVkVEIGtlcm5lbCB0YWlu dCAoVG9tYXMgSGVuemwpIFsxNjAyMDMzXQorLSBSZW5hbWUgUkhfRElTQUJMRV9ERVBSRUNBVEVE IHRvIFJIRUxfRElGRkVSRU5DRVMgKERvbiBaaWNrdXMpCistIHMzOTA6IExvY2sgZG93biB0aGUg a2VybmVsIHdoZW4gdGhlIElQTCBzZWN1cmUgZmxhZyBpcyBzZXQgKEplcmVteSBDbGluZSkKKy0g ZWZpOiBMb2NrIGRvd24gdGhlIGtlcm5lbCBpZiBib290ZWQgaW4gc2VjdXJlIGJvb3QgbW9kZSAo RGF2aWQgSG93ZWxscykKKy0gZWZpOiBBZGQgYW4gRUZJX1NFQ1VSRV9CT09UIGZsYWcgdG8gaW5k aWNhdGUgc2VjdXJlIGJvb3QgbW9kZSAoRGF2aWQgSG93ZWxscykKKy0gc2VjdXJpdHk6IGxvY2tk b3duOiBleHBvc2UgYSBob29rIHRvIGxvY2sgdGhlIGtlcm5lbCBkb3duIChKZXJlbXkgQ2xpbmUp CistIE1ha2UgZ2V0X2NlcnRfbGlzdCgpIHVzZSBlZmlfc3RhdHVzX3RvX3N0cigpIHRvIHByaW50 IGVycm9yIG1lc3NhZ2VzLiAoUGV0ZXIgSm9uZXMpCistIEFkZCBlZmlfc3RhdHVzX3RvX3N0cigp IGFuZCByZXdvcmsgZWZpX3N0YXR1c190b19lcnIoKS4gKFBldGVyIEpvbmVzKQorLSBBZGQgc3Vw cG9ydCBmb3IgZGVwcmVjYXRpbmcgcHJvY2Vzc29ycyAoTGF1cmEgQWJib3R0KSBbMTU2NTcxNyAx NTk1OTE4IDE2MDk2MDQgMTYxMDQ5M10KKy0gYXJtOiBhYXJjaDY0OiBEcm9wIHRoZSBFWFBFUlQg c2V0dGluZyBmcm9tIEFSTTY0X0ZPUkNFXzUyQklUIChKZXJlbXkgQ2xpbmUpCistIGlvbW11L2Fy bS1zbW11OiB3b3JrYXJvdW5kIERNQSBtb2RlIGlzc3VlcyAoTGF1cmEgQWJib3R0KQorLSByaF9r YWJpOiBpbnRyb2R1Y2UgUkhfS0FCSV9FWENMVURFIChKYWt1YiBSYWNlaykgWzE2NTIyNTZdCist IGlwbWk6IGRvIG5vdCBjb25maWd1cmUgaXBtaSBmb3IgSFBFIG00MDAgKExhdXJhIEFiYm90dCkg WzE2NzAwMTddCistIGtBQkk6IEFkZCBnZW5lcmljIGtBQkkgbWFjcm9zIHRvIHVzZSBmb3Iga0FC SSB3b3JrYXJvdW5kcyAoTXlyb24gU3Rvd2UpIFsxNTQ2ODMxXQorLSBhZGQgcGNpX2h3X3ZlbmRv cl9zdGF0dXMoKSAoTWF1cml6aW8gTG9tYmFyZGkpIFsxNTkwODI5XQorLSBhaGNpOiB0aHVuZGVy eDI6IEZpeCBmb3IgZXJyYXRhIHRoYXQgYWZmZWN0cyBzdG9wIGVuZ2luZSAoUm9iZXJ0IFJpY2h0 ZXIpIFsxNTYzNTkwXQorLSBWdWxjYW46IEFIQ0kgUENJIGJhciBmaXggZm9yIEJyb2FkY29tIFZ1 bGNhbiBlYXJseSBzaWxpY29uIChSb2JlcnQgUmljaHRlcikgWzE1NjM1OTBdCistIGJwZjogc2V0 IHVucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQgdG8gMSBieSBkZWZhdWx0LCBhZGQgYSBib290IHBh cmFtZXRlciAoRXVnZW5lIFN5cm9taWF0bmlrb3YpIFsxNTYxMTcxXQorLSBhZGQgUmVkIEhhdC1z cGVjaWZpYyB0YWludCBmbGFncyAoRXVnZW5lIFN5cm9taWF0bmlrb3YpIFsxNTU5ODc3XQorLSB0 YWdzLnNoOiBJZ25vcmUgcmVkaGF0L3JwbSAoSmVyZW15IENsaW5lKQorLSBwdXQgUkhFTCBpbmZv IGludG8gZ2VuZXJhdGVkIGhlYWRlcnMgKExhdXJhIEFiYm90dCkgWzE2NjM3MjhdCistIGFhcmNo NjQ6IGFjcGkgc2NhbjogRml4IHJlZ3Jlc3Npb24gcmVsYXRlZCB0byBYLUdlbmUgVUFSVHMgKE1h cmsgU2FsdGVyKSBbMTUxOTU1NF0KKy0gQUNQSSAvIGlycTogV29ya2Fyb3VuZCBmaXJtd2FyZSBp c3N1ZSBvbiBYLUdlbmUgYmFzZWQgbTQwMCAoTWFyayBTYWx0ZXIpIFsxNTE5NTU0XQorLSBtb2R1 bGVzOiBhZGQgcmhlbHZlcnNpb24gTU9EVUxFX0lORk8gdGFnIChMYXVyYSBBYmJvdHQpCistIEFD UEk6IEFQRUk6IGFybTY0OiBJZ25vcmUgYnJva2VuIEhQRSBtb29uc2hvdCBBUEVJIHN1cHBvcnQg KEFsIFN0b25lKSBbMTUxODA3Nl0KKy0gQWRkIFJlZCBIYXQgdGFpbnRpbmcgKExhdXJhIEFiYm90 dCkgWzE1NjU3MDQgMTY1MjI2Nl0KKy0gSW50cm9kdWNlIENPTkZJR19SSF9ESVNBQkxFX0RFUFJF Q0FURUQgKExhdXJhIEFiYm90dCkKKy0gU3RvcCBtZXJnaW5nIGFyay1wYXRjaGVzIGZvciByZWxl YXNlIChEb24gWmlja3VzKQorLSBGaXggcGF0aCBsb2NhdGlvbiBmb3IgYXJrLXVwZGF0ZS1jb25m aWdzLnNoIChEb24gWmlja3VzKQorLSBDb21iaW5lIFJlZCBIYXQgcGF0Y2hlcyBpbnRvIHNpbmds ZSBwYXRjaCAoRG9uIFppY2t1cykKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9taXNjIChKZXJl bXkgQ2xpbmUpCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvbmV0L3dpcmVsZXNzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL3BoeSAoRmVkb3JhIEtlcm5lbCBU ZWFtKQorLSBOZXcgY29uZmlncyBpbiBkcml2ZXJzL3R0eSAoRmVkb3JhIEtlcm5lbCBUZWFtKQor LSBTZXQgU3F1YXNoRlMgZGVjb21wcmVzc2lvbiBvcHRpb25zIGZvciBhbGwgZmxhdm9ycyB0byBt YXRjaCBSSEVMIChCb2hkYW4gS2hvbXV0c2t5aSkKKy0gY29uZmlnczogRW5hYmxlIENPTkZJR19F TkVSR1lfTU9ERUwgKFBoaWwgQXVsZCkKKy0gTmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9waW5jdHJs IChGZWRvcmEgS2VybmVsIFRlYW0pCistIFVwZGF0ZSBDT05GSUdfVEhFUk1BTF9ORVRMSU5LIChK dXN0aW4gRm9yYmVzKQorLSBTZXBhcmF0ZSBtZXJnZS11cHN0cmVhbSBhbmQgcmVsZWFzZSBzdGFn ZXMgKERvbiBaaWNrdXMpCistIFJlLWVuYWJsZSBDT05GSUdfSVJfU0VSSUFMIG9uIEZlZG9yYSAo UHJhcml0IEJoYXJnYXZhKQorLSBDcmVhdGUgUGF0Y2hsaXN0LmNoYW5nZWxvZyBmaWxlIChEb24g Wmlja3VzKQorLSBGaWx0ZXIgb3V0IHVwc3RyZWFtIGNvbW1pdHMgZnJvbSBjaGFuZ2Vsb2cgKERv biBaaWNrdXMpCistIE1lcmdlIFVwc3RyZWFtIHNjcmlwdCBmaXhlcyAoRG9uIFppY2t1cykKKy0g a2VybmVsLnNwZWM6IFJlbW92ZSBrZXJuZWwta2V5cyBkaXJlY3Rvcnkgb24gcnBtIGVyYXNlIChQ cmFyaXQgQmhhcmdhdmEpCistIEFkZCBtbHg1X3ZkcGEgdG8gbW9kdWxlIGZpbHRlciBmb3IgRmVk b3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBBZGQgcHl0aG9uMy1zcGhpbnhfcnRkX3RoZW1lIGJ1 aWxkcmVxIGZvciBkb2NzIChKdXN0aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlncy9wcm9j ZXNzX2NvbmZpZ3Muc2g6IFJlbW92ZSAqLmNvbmZpZy5vcmlnIGZpbGVzIChQcmFyaXQgQmhhcmdh dmEpCistIHJlZGhhdC9jb25maWdzL3Byb2Nlc3NfY29uZmlncy5zaDogQWRkIHByb2Nlc3NfY29u Zmlnc19rbm93bl9icm9rZW4gZmxhZyAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRoYXQvTWFrZWZp bGU6IEZpeCAnKi1jb25maWdzJyB0YXJnZXRzIChQcmFyaXQgQmhhcmdhdmEpCistIGRpc3QtbWVy Z2UtdXBzdHJlYW06IENoZWNrb3V0IGtub3duIGJyYW5jaCBmb3IgY2kgc2NyaXB0cyAoRG9uIFpp Y2t1cykKKy0ga2VybmVsLnNwZWM6IGRvbid0IG92ZXJyaWRlIHVwc3RyZWFtIGNvbXBpbGVyIGZs YWdzIGZvciBwcGM2NGxlIChEYW4gSG9yw6FrKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZXMgKEp1 c3RpbiBNLiBGb3JiZXMpCistIEZlZG9yYSBjb25maSBndXBkYXRlIChKdXN0aW4gTS4gRm9yYmVz KQorLSBtb2Qtc2lnbi5zaDogRml4IHN5bnRheCBmbGFnZ2VkIGJ5IHNoZWxsY2hlY2sgKEJlbiBD cm9ja2VyKQorLSBTd2FwIGhvdyBhcmstbGF0ZXN0IGlzIGJ1aWx0IChEb24gWmlja3VzKQorLSBB ZGQgZXh0cmEgdmVyc2lvbiBidW1wIHRvIG9zLWJ1aWxkIGJyYW5jaCAoRG9uIFppY2t1cykKKy0g ZGlzdC1yZWxlYXNlOiBBdm9pZCBuZWVkbGVzcyB2ZXJzaW9uIGJ1bXAuIChEb24gWmlja3VzKQor LSBBZGQgZGlzdC1mZWRvcmEtcmVsZWFzZSB0YXJnZXQgKERvbiBaaWNrdXMpCistIFJlbW92ZSBy ZWR1bmRhbnQgY29kZSBpbiBkaXN0LXJlbGVhc2UgKERvbiBaaWNrdXMpCistIE1ha2VmaWxlLmNv bW1vbiByZW5hbWUgVEFHIHRvIF9UQUcgKERvbiBaaWNrdXMpCistIEZlZG9yYSBjb25maWcgY2hh bmdlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgZmlsdGVyIHVwZGF0ZSAoSnVzdGluIE0u IEZvcmJlcykKKy0gQ29uZmlnIHVwZGF0ZSBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQor LSBlbmFibGUgUFJPVEVDVEVEX1ZJUlRVQUxJWkFUSU9OX0dVRVNUIGZvciBhbGwgczM5MHgga2Vy bmVscyAoRGFuIEhvcsOhaykKKy0gcmVkaGF0OiBhcms6IGVuYWJsZSBDT05GSUdfTkVUX1NDSF9U QVBSSU8gKERhdmlkZSBDYXJhdHRpKQorLSByZWRoYXQ6IGFyazogZW5hYmxlIENPTkZJR19ORVRf U0NIX0VURiAoRGF2aWRlIENhcmF0dGkpCistIE1vcmUgRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChK dXN0aW4gTS4gRm9yYmVzKQorLSBOZXcgY29uZmlnIGRlcHMgKEp1c3RpbiBNLiBGb3JiZXMpCist IEZlZG9yYSBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmlyc3QgaGFsZiBv ZiBjb25maWcgdXBkYXRlcyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBVcGRhdGVz IGZvciBGZWRvcmEgYXJtIGFyY2hpdGVjdHVyZXMgZm9yIHRoZSA1Ljkgd2luZG93IChQZXRlciBS b2JpbnNvbikKKy0gTWVyZ2UgNS45IGNvbmZpZyBjaGFuZ2VzIGZyb20gUGV0ZXIgUm9iaW5zb24g KEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBjb25maWcgb3B0aW9ucyB0aGF0IG9ubHkgc2hvdyB1 cCB3aGVuIHdlIHByZXAgb24gYXJtIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDb25maWcgdXBkYXRl cyBmb3IgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBmZWRvcmE6IGVuYWJsZSBlbmVyeSBt b2RlbCAoUGV0ZXIgUm9iaW5zb24pCistIFVzZSB0aGUgY29uZmlncy9nZW5lcmljIGNvbmZpZyBm b3IgU05EX0hEQV9JTlRFTCBldmVyeXdoZXJlIChQZXRlciBSb2JpbnNvbikKKy0gRW5hYmxlIFpT VEQgY29tcHJlc3Npb24gYWxnb3JpdGhtIG9uIGFsbCBrZXJuZWxzIChQZXRlciBSb2JpbnNvbikK Ky0gRW5hYmxlIEFSTV9TTUNDQ19TT0NfSUQgb24gYWxsIGFhcmNoNjQga2VybmVscyAoUGV0ZXIg Um9iaW5zb24pCistIGlpbzogZW5hYmxlIExUUi01NTkgbGlnaHQgYW5kIHByb3hpbWl0eSBzZW5z b3IgKFBldGVyIFJvYmluc29uKQorLSBpaW86IGNoZW1pY2FsOiBlbmFibGUgc29tZSBwb3B1bGFy IGNoZW1pY2FsIGFuZCBwYXJ0aWNhbCBzZW5zb3JzIChQZXRlciBSb2JpbnNvbikKKy0gTW9yZSBt aXNtYXRjaGVzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIGNoYW5nZSBkdWUg dG8gZGVwcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gQ09ORklHX1NORF9TT0NfTUFYOTgzOTAgaXMg bm93IHNlbGVjdGVkIGJ5IFNORF9TT0NfSU5URUxfREE3MjE5X01BWDk4MzU3QV9HRU5FUklDIChK dXN0aW4gTS4gRm9yYmVzKQorLSBDb25maWcgY2hhbmdlIHJlcXVpcmVkIGZvciBidWlsZCBwYXJ0 IDIgKEp1c3RpbiBNLiBGb3JiZXMpCistIENvbmZpZyBjaGFuZ2UgcmVxdWlyZWQgZm9yIGJ1aWxk IChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZSAoSnVzdGluIE0uIEZv cmJlcykKKy0gQWRkIGFiaWxpdHkgdG8gc3luYyB1cHN0cmVhbSB0aHJvdWdoIE1ha2VmaWxlIChE b24gWmlja3VzKQorLSBBZGQgbWFzdGVyIG1lcmdlIGNoZWNrIChEb24gWmlja3VzKQorLSBSZXBs YWNlIGhhcmRjb2RlZCB2YWx1ZXMgJ29zLWJ1aWxkJyBhbmQgcHJvamVjdCBpZCB3aXRoIHZhcmlh YmxlcyAoRG9uIFppY2t1cykKKy0gcmVkaGF0L01ha2VmaWxlLmNvbW1vbjogRml4IE1BUktFUiAo UHJhcml0IEJoYXJnYXZhKQorLSBnaXRhdHRyaWJ1dGVzOiBSZW1vdmUgdW5uZWNlc2FyeSBleHBv cnQgcmVzdHJpY3Rpb25zIChQcmFyaXQgQmhhcmdhdmEpCistIEFkZCBuZXcgY2VydHMgZm9yIGR1 YWwgc2lnbmluZyB3aXRoIGJvb3Rob2xlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBVcGRhdGUgc2Vj dXJlYm9vdCBzaWduaW5nIGZvciBkdWFsIGtleXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIGZlZG9y YTogZW5hYmxlIExFRFNfU0dNMzE0MCBmb3IgYXJtIGNvbmZpZ3MgKFBldGVyIFJvYmluc29uKQor LSBFbmFibGUgQ09ORklHX0RNX1ZFUklUWV9WRVJJRllfUk9PVEhBU0hfU0lHIChKdXN0aW4gTS4g Rm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogRml4IGNvbW1vbiBDT05GSUdzIChQcmFyaXQgQmhh cmdhdmEpCistIHJlZGhhdC9jb25maWdzOiBHZW5lcmFsIENPTkZJRyBjbGVhbnVwcyAoUHJhcml0 IEJoYXJnYXZhKQorLSByZWRoYXQvY29uZmlnczogVXBkYXRlICYgZ2VuZXJhbGl6ZSBldmFsdWF0 ZV9jb25maWdzIChQcmFyaXQgQmhhcmdhdmEpCistIGZlZG9yYTogYXJtOiBVcGRhdGUgc29tZSBt ZXNvbiBjb25maWcgb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24pCistIHJlZGhhdC9kb2NzOiBBZGQg RmVkb3JhIFJQTSB0YWdnaW5nIGRhdGUgKFByYXJpdCBCaGFyZ2F2YSkKKy0gVXBkYXRlIGNvbmZp ZyBmb3IgcmVuYW1lZCBwYW5lbCBkcml2ZXIuIChQZXRlciBSb2JpbnNvbikKKy0gRW5hYmxlIFNF UklBTF9TQzE2SVM3WFggZm9yIFNQSSBpbnRlcmZhY2VzIChQZXRlciBSb2JpbnNvbikKKy0gczM5 MHgtemZjcGR1bXA6IEhhbmRsZSBtaXNzaW5nIE1vZHVsZS5zeW12ZXJzIGZpbGUgKERvbiBaaWNr dXMpCistIEZlZG9yYSBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0 L2NvbmZpZ3M6IEFkZCAudG1wIGZpbGVzIHRvIC5naXRpZ25vcmUgKFByYXJpdCBCaGFyZ2F2YSkK Ky0gZGlzYWJsZSB1bmNvbW1vbiBUQ1AgY29uZ2VzdGlvbiBjb250cm9sIGFsZ29yaXRobXMgKERh dmlkZSBDYXJhdHRpKQorLSBBZGQgbmV3IGJwZiBtYW4gcGFnZXMgKEp1c3RpbiBNLiBGb3JiZXMp CistIEFkZCBkZWZhdWx0IG9wdGlvbiBmb3IgQ09ORklHX0FSTTY0X0JUSV9LRVJORUwgdG8gcGVu ZGluZy1jb21tb24gc28gdGhhdCBlbG4ga2VybmVscyBidWlsZCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gcmVkaGF0L01ha2VmaWxlOiBBZGQgZmVkb3JhLWNvbmZpZ3MgYW5kIHJoLWNvbmZpZ3MgbWFr ZSB0YXJnZXRzIChQcmFyaXQgQmhhcmdhdmEpCistIHJlZGhhdC9jb25maWdzOiBVc2UgU0hBNTEy IGZvciBtb2R1bGUgc2lnbmluZyAoUHJhcml0IEJoYXJnYXZhKQorLSBnZW5zcGVjLnNoOiAndG91 Y2gnIGVtcHR5IFBhdGNobGlzdCBmaWxlIGZvciBzaW5nbGUgdGFyYmFsbCAoRG9uIFppY2t1cykK Ky0gRmVkb3JhIGNvbmZpZyB1cGRhdGUgZm9yIHJjMSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVk b3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIHVw ZGF0ZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIHJlZGhhdC9NYWtlZmlsZS5jb21tb246IGZpeCBS UE1LU1VCTEVWRUwgY29uZGl0aW9uIChPbmRyZWogTW9zbmFjZWspCistIHJlZGhhdC9NYWtlZmls ZTogc2lsZW5jZSBLQUJJIHRhciBvdXRwdXQgKE9uZHJlaiBNb3NuYWNlaykKKy0gT25lIG1vcmUg RmVkb3JhIGNvbmZpZyB1cGRhdGUgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZlZG9yYSBjb25maWcg dXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IFBBVENITEVWRUwgZm9yIG1lcmdlIHdp bmRvdyAoSnVzdGluIE0uIEZvcmJlcykKKy0gQ2hhbmdlIGFyayBDT05GSUdfQ09NTU9OX0NMSyB0 byB5ZXMsIGl0IGlzIHNlbGVjdGVkIGFscmVhZHkgYnkgb3RoZXIgb3B0aW9ucyAoSnVzdGluIE0u IEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4gTS4gRm9yYmVzKQorLSBG ZWRvcmEgY29uZmlnIHVwZGF0ZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZlZG9yYSBjb25maWcg dXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gTW9yZSBtb2R1bGUgZmlsdGVyaW5nIGZvciBG ZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIFVwZGF0ZSBmaWx0ZXJzIGZvciBybmJkIGluIEZl ZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gRmVkb3JhIGNvbmZpZyB1cGRhdGVzIChKdXN0aW4g TS4gRm9yYmVzKQorLSBGaXggdXAgbW9kdWxlIGZpbHRlcmluZyBmb3IgNS44IChKdXN0aW4gTS4g Rm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZXMgKEp1c3RpbiBNLiBGb3JiZXMpCistIE1v cmUgRmVkb3JhIGNvbmZpZyB3b3JrIChKdXN0aW4gTS4gRm9yYmVzKQorLSBSVFc4OEJFIGFuZCBD RSBoYXZlIGJlZW4gZXh0cmFjdGVkIHRvIHRoZWlyIG93biBtb2R1bGVzIChKdXN0aW4gTS4gRm9y YmVzKQorLSBTZXQgQ09ORklHX0JMS19JTkxJTkVfRU5DUllQVElPTl9GQUxMQkFDSyBmb3IgRmVk b3JhIChKdXN0aW4gTS4gRm9yYmVzKQorLSBGZWRvcmEgY29uZmlnIHVwZGF0ZXMgKEp1c3RpbiBN LiBGb3JiZXMpCistIEFybTY0IFVzZSBCcmFuY2ggVGFyZ2V0IElkZW50aWZpY2F0aW9uIGZvciBr ZXJuZWwgKEp1c3RpbiBNLiBGb3JiZXMpCistIENoYW5nZSB2YWx1ZSBvZiBDT05GSUdfU0VDVVJJ VFlfU0VMSU5VWF9DSEVDS1JFUVBST1RfVkFMVUUgKEp1c3RpbiBNLiBGb3JiZXMpCistIEZlZG9y YSBjb25maWcgdXBkYXRlcyAoSnVzdGluIE0uIEZvcmJlcykKKy0gRml4IGNvbmZpZ3MgZm9yIEZl ZG9yYSAoSnVzdGluIE0uIEZvcmJlcykKKy0gQWRkIHplcm8tY29tbWl0IHRvIGZvcm1hdC1wYXRj aCBvcHRpb25zIChKdXN0aW4gTS4gRm9yYmVzKQorLSBDb3B5IE1ha2VmaWxlLnJoZWx2ZXIgYXMg YSBzb3VyY2UgZmlsZSByYXRoZXIgdGhhbiBhIHBhdGNoIChKZXJlbXkgQ2xpbmUpCistIE1vdmUg dGhlIHNlZCB0byBjbGVhciB0aGUgcGF0Y2ggdGVtcGxhdGluZyBvdXRzaWRlIG9mIGNvbmRpdGlv bmFscyAoSnVzdGluIE0uIEZvcmJlcykKKy0gTWF0Y2ggdGVtcGxhdGUgZm9ybWF0IGluIGtlcm5l bC5zcGVjLnRlbXBsYXRlIChKdXN0aW4gTS4gRm9yYmVzKQorLSBCcmVhayBvdXQgdGhlIFBhdGNo ZXMgaW50byBpbmRpdmlkdWFsIGZpbGVzIGZvciBkaXN0LWdpdCAoSnVzdGluIE0uIEZvcmJlcykK Ky0gQnJlYWsgdGhlIFJlZCBIYXQgcGF0Y2ggaW50byBpbmRpdmlkdWFsIGNvbW1pdHMgKEplcmVt eSBDbGluZSkKKy0gRml4IHVwZGF0ZV9zY3JpcHRzLnNoIHVuc2VsZWN0aXZlIHBhdHRlcm4gc3Vi IChEYXZpZCBIb3dlbGxzKQorLSBBZGQgY2VjIHRvIHRoZSBmaWx0ZXIgb3ZlcnJpZGVzIChKdXN0 aW4gTS4gRm9yYmVzKQorLSBBZGQgb3ZlcnJpZGVzIHRvIGZpbHRlci1tb2R1bGVzLnNoIChKdXN0 aW4gTS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogRW5hYmxlIENPTkZJR19TTUM5MVggYW5k IGRpc2FibGUgQ09ORklHX1NNQzkxMVggKFByYXJpdCBCaGFyZ2F2YSkgWzE3MjIxMzZdCistIElu Y2x1ZGUgYnBmdG9vbC1zdHJ1Y3Rfb3BzIG1hbiBwYWdlIGluIHRoZSBicGZ0b29sIHBhY2thZ2Ug KEplcmVteSBDbGluZSkKKy0gQWRkIHNoYXJlZGJ1ZmZlcl9jb25maWd1cmF0aW9uLnB5IHRvIHRo ZSBwYXRoZml4LnB5IHNjcmlwdCAoSmVyZW15IENsaW5lKQorLSBVc2UgX19tYWtlIG1hY3JvIGlu c3RlYWQgb2YgbWFrZSAoVG9tIFN0ZWxsYXJkKQorLSBTaWduIG9mZiBnZW5lcmF0ZWQgY29uZmln dXJhdGlvbiBwYXRjaGVzIChKZXJlbXkgQ2xpbmUpCistIERyb3AgdGhlIHN0YXRpYyBwYXRoIGNv bmZpZ3VyYXRpb24gZm9yIHRoZSBTcGhpbnggZG9jcyAoSmVyZW15IENsaW5lKQorLSByZWRoYXQ6 IEFkZCBkdW1teS1tb2R1bGUga2VybmVsIG1vZHVsZSAoUHJhcml0IEJoYXJnYXZhKQorLSByZWRo YXQ6IGVuYWJsZSBDT05GSUdfTFdUVU5ORUxfQlBGIChKaXJpIEJlbmMpCistIFJlbW92ZSB0eXBv ZWQgY29uZmlnIGZpbGUgYWFyY2g2NENPTkZJR19TTV9HQ0NfODE1MCAoSnVzdGluIE0uIEZvcmJl cykKKy0gQWRkIERvY3VtZW50YXRpb24gYmFjayB0byBrZXJuZWwtZGV2ZWwgYXMgaXQgaGFzIEtj b25maWcgbm93IChKdXN0aW4gTS4gRm9yYmVzKQorLSBDb3B5IGRpc3RybyBmaWxlcyByYXRoZXIg dGhhbiBtb3ZpbmcgdGhlbSAoSmVyZW15IENsaW5lKQorLSBrZXJuZWwuc3BlYzogZml4ICdtYWtl IHNjcmlwdHMnIGZvciBrZXJuZWwtZGV2ZWwgcGFja2FnZSAoQnJpYW4gTWFzbmV5KQorLSBNYWtl ZmlsZTogY29ycmVjdCBoZWxwIHRleHQgZm9yIGRpc3QtY3Jvc3MtPGFyY2g+LXJwbXMgKEJyaWFu IE1hc25leSkKKy0gcmVkaGF0L01ha2VmaWxlOiBGaXggUkhFTDggcHl0aG9uIHdhcm5pbmcgKFBy YXJpdCBCaGFyZ2F2YSkKKy0gcmVkaGF0OiBDaGFuZ2UgTWFrZWZpbGUgdGFyZ2V0IG5hbWVzIHRv IGRpc3QtIChQcmFyaXQgQmhhcmdhdmEpCistIGNvbmZpZ3M6IERpc2FibGUgU2VyaWFsIElSIGRy aXZlciAoUHJhcml0IEJoYXJnYXZhKQorLSBGaXggIm11bHRpcGxlICUlZmlsZXMgZm9yIHBhY2th Z2Uga2VybmVsLXRvb2xzIiAoUGFibG8gR3JlY28pCistIEludHJvZHVjZSBhIFNwaGlueCBkb2N1 bWVudGF0aW9uIHByb2plY3QgKEplcmVteSBDbGluZSkKKy0gQnVpbGQgQVJLIGFnYWluc3QgRUxO IChEb24gWmlja3VzKQorLSBEcm9wIHRoZSByZXF1aXJlbWVudCB0byBoYXZlIGEgcmVtb3RlIGNh bGxlZCBsaW51cyAoSmVyZW15IENsaW5lKQorLSBSZW5hbWUgJ2ludGVybmFsJyBicmFuY2ggdG8g J29zLWJ1aWxkJyAoRG9uIFppY2t1cykKKy0gT25seSBpbmNsdWRlIG9wZW4gbWVyZ2UgcmVxdWVz dHMgd2l0aCAiSW5jbHVkZSBpbiBSZWxlYXNlcyIgbGFiZWwgKEplcmVteSBDbGluZSkKKy0gUGFj a2FnZSBncGlvLXdhdGNoIGluIGtlcm5lbC10b29scyAoSmVyZW15IENsaW5lKQorLSBFeGl0IG5v bi16ZXJvIGlmIHRoZSB0YWcgYWxyZWFkeSBleGlzdHMgZm9yIGEgcmVsZWFzZSAoSmVyZW15IENs aW5lKQorLSBBZGp1c3QgdGhlIGNoYW5nZWxvZyB1cGRhdGUgc2NyaXB0IHRvIG5vdCBwdXNoIGFu eXRoaW5nIChKZXJlbXkgQ2xpbmUpCistIERyb3AgLS10YXJnZXQgbm9hcmNoIGZyb20gdGhlIHJo LXJwbXMgbWFrZSB0YXJnZXQgKEplcmVteSBDbGluZSkKKy0gQWRkIGEgc2NyaXB0IHRvIGdlbmVy YXRlIHJlbGVhc2UgdGFncyBhbmQgYnJhbmNoZXMgKEplcmVteSBDbGluZSkKKy0gU2V0IENPTkZJ R19WRFBBIGZvciBmZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMpCistIEFkZCBhIFJFQURNRSB0byB0 aGUgZGlzdC1naXQgcmVwb3NpdG9yeSAoSmVyZW15IENsaW5lKQorLSBQcm92aWRlIGRlZmF1bHRz IGluIGFyay1yZWJhc2UtcGF0Y2hlcy5zaCAoSmVyZW15IENsaW5lKQorLSBEZWZhdWx0IGFyay1y ZWJhc2UtcGF0Y2hlcy5zaCB0byBub3QgcmVwb3J0IGlzc3VlcyAoSmVyZW15IENsaW5lKQorLSBE cm9wIERJU1QgZnJvbSByZWxlYXNlIGNvbW1pdHMgYW5kIHRhZ3MgKEplcmVteSBDbGluZSkKKy0g UGxhY2UgdGhlIGJ1aWxkaWQgYmVmb3JlIHRoZSBkaXN0IGluIHRoZSByZWxlYXNlIChKZXJlbXkg Q2xpbmUpCistIFN5bmMgdXAgd2l0aCBGZWRvcmEgYXJtIGNvbmZpZ3VyYXRpb24gcHJpb3IgdG8g bWVyZ2luZyAoSmVyZW15IENsaW5lKQorLSBEaXNhYmxlIENPTkZJR19QUk9URUNURURfVklSVFVB TElaQVRJT05fR1VFU1QgZm9yIHpmY3BkdW1wIChKZXJlbXkgQ2xpbmUpCistIEFkZCBSSE1BSU5U QUlORVJTIGZpbGUgYW5kIHN1cHBvcnRpbmcgY29uZiAoRG9uIFppY2t1cykKKy0gQWRkIGEgc2Ny aXB0IHRvIHRlc3QgaWYgYWxsIGNvbW1pdHMgYXJlIHNpZ25lZCBvZmYgKEplcmVteSBDbGluZSkK Ky0gRml4IG1ha2UgcmgtY29uZmlncy1hcmNoIChEb24gWmlja3VzKQorLSBEcm9wIFJIX0ZFRE9S QSBpbiBmYXZvciBvZiB0aGUgbm93LW1lcmdlZCBSSEVMX0RJRkZFUkVOQ0VTIChKZXJlbXkgQ2xp bmUpCistIFN5bmMgdXAgRmVkb3JhIGNvbmZpZ3MgZnJvbSB0aGUgZmlyc3Qgd2VlayBvZiB0aGUg bWVyZ2Ugd2luZG93IChKZXJlbXkgQ2xpbmUpCistIE1pZ3JhdGUgYmxhY2tsaXN0aW5nIGZsb3Bw eS5rbyB0byBtb2QtYmxhY2tsaXN0LnNoIChEb24gWmlja3VzKQorLSBrZXJuZWwgcGFja2FnaW5n OiBDb21iaW5lIG1vZC1ibGFja2xpc3Quc2ggYW5kIG1vZC1leHRyYS1ibGFja2xpc3Quc2ggKERv biBaaWNrdXMpCistIGtlcm5lbCBwYWNrYWdpbmc6IEZpeCBleHRyYSBuYW1lc3BhY2UgY29sbGlz aW9uIChEb24gWmlja3VzKQorLSBtb2QtZXh0cmEuc2g6IFJlbmFtZSB0byBtb2QtYmxhY2tsaXN0 LnNoIChEb24gWmlja3VzKQorLSBtb2QtZXh0cmEuc2g6IE1ha2UgZmlsZSBnZW5lcmljIChEb24g Wmlja3VzKQorLSBGaXggYSBwYWluZnVsbHkgb2J2aW91cyBZQU1MIHN5bnRheCBlcnJvciBpbiAu Z2l0bGFiLWNpLnltbCAoSmVyZW15IENsaW5lKQorLSBBZGQgaW4gYXJtdjdobCBrZXJuZWwgaGVh ZGVyIHN1cHBvcnQgKERvbiBaaWNrdXMpCistIERpc2FibGUgYWxsIEJ1aWxkS2VybmVsIGNvbW1h bmRzIHdoZW4gb25seSBidWlsZGluZyBoZWFkZXJzIChEb24gWmlja3VzKQorLSBEcm9wIGFueSBn aXRsYWItY2kgcGF0Y2hlcyBmcm9tIGFyay1wYXRjaGVzIChKZXJlbXkgQ2xpbmUpCistIEJ1aWxk IHRoZSBzcnBtIGZvciBpbnRlcm5hbCBicmFuY2ggQ0kgdXNpbmcgdGhlIHZhbmlsbGEgdHJlZSAo SmVyZW15IENsaW5lKQorLSBQdWxsIGluIHRoZSBsYXRlc3QgQVJNIGNvbmZpZ3VyYXRpb25zIGZv ciBGZWRvcmEgKEplcmVteSBDbGluZSkKKy0gRml4IHh6IG1lbW9yeSB1c2FnZSBpc3N1ZSAoTmVp bCBIb3JtYW4pCistIFVzZSBhcmstbGF0ZXN0IGluc3RlYWQgb2YgbWFzdGVyIGZvciB1cGRhdGUg c2NyaXB0IChKZXJlbXkgQ2xpbmUpCistIE1vdmUgdGhlIENJIGpvYnMgYmFjayBpbnRvIHRoZSBB UksgcmVwb3NpdG9yeSAoSmVyZW15IENsaW5lKQorLSBTeW5jIHVwIEFSSydzIEZlZG9yYSBjb25m aWcgd2l0aCB0aGUgZGlzdC1naXQgcmVwb3NpdG9yeSAoSmVyZW15IENsaW5lKQorLSBQdWxsIGlu IHRoZSBsYXRlc3QgY29uZmlndXJhdGlvbiBjaGFuZ2VzIGZyb20gRmVkb3JhIChKZXJlbXkgQ2xp bmUpCistIGNvbmZpZ3M6IGVuYWJsZSBDT05GSUdfTkVUX1NDSF9DQlMgKE1hcmNlbG8gUmljYXJk byBMZWl0bmVyKQorLSBEcm9wIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBpbiBmZWRvcmEvIHRoYXQg bm8gbG9uZ2VyIGV4aXN0IChKZXJlbXkgQ2xpbmUpCistIFNldCBSSF9GRURPUkEgZm9yIEFSSyBh bmQgRmVkb3JhIChKZXJlbXkgQ2xpbmUpCistIHJlZGhhdC9rZXJuZWwuc3BlYzogSW5jbHVkZSB0 aGUgcmVsZWFzZSBpbiB0aGUga2VybmVsIENPUFlJTkcgZmlsZSAoSmVyZW15IENsaW5lKQorLSBy ZWRoYXQva2VybmVsLnNwZWM6IGFkZCBzY3JpcHRzL2pvYnNlcnZlci1leGVjIHRvIHB5M19zaGJh bmdfb3B0cyBsaXN0IChKZXJlbXkgQ2xpbmUpCistIHJlZGhhdC9rZXJuZWwuc3BlYzogcGFja2Fn ZSBicGZ0b29sLWdlbiBtYW4gcGFnZSAoSmVyZW15IENsaW5lKQorLSBkaXN0Z2l0LWNoYW5nZWxv ZzogaGFuZGxlIG11bHRpcGxlIHktc3RyZWFtIEJaIG51bWJlcnMgKEJydW5vIE1lbmVndWVsZSkK Ky0gcmVkaGF0L2tlcm5lbC5zcGVjOiByZW1vdmUgYWxsIGlubGluZSBjb21tZW50cyAoQnJ1bm8g TWVuZWd1ZWxlKQorLSByZWRoYXQvZ2Vuc3BlYzogYXdrIHVua25vd24gd2hpdGVzcGFjZSByZWdl eCBwYXR0ZXJuIChCcnVubyBNZW5lZ3VlbGUpCistIEltcHJvdmUgdGhlIHJlYWRhYmlsaXR5IG9m IGdlbl9jb25maWdfcGF0Y2hlcy5zaCAoSmVyZW15IENsaW5lKQorLSBGaXggc29tZSBhd2t3YXJk IGVkZ2UgY2FzZXMgaW4gZ2VuX2NvbmZpZ19wYXRjaGVzLnNoIChKZXJlbXkgQ2xpbmUpCistIFVw ZGF0ZSB0aGUgQ0kgZW52aXJvbm1lbnQgdG8gdXNlIEZlZG9yYSAzMSAoSmVyZW15IENsaW5lKQor LSByZWRoYXQ6IGRyb3Agd2hpdGVzcGFjZSBmcm9tIHdpdGhfZ2NvdiBtYWNybyAoSmFuIFN0YW5j ZWspCistIGNvbmZpZ3M6IEVuYWJsZSBDT05GSUdfS0VZX0RIX09QRVJBVElPTlMgb24gQVJLIChP bmRyZWogTW9zbmFjZWspCistIGNvbmZpZ3M6IEFkanVzdCBDT05GSUdfTVBMU19ST1VUSU5HIGFu ZCBDT05GSUdfTVBMU19JUFRVTk5FTCAoTGF1cmEgQWJib3R0KQorLSBOZXcgY29uZmlncyBpbiBs aWIvY3J5cHRvIChKZXJlbXkgQ2xpbmUpCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvY2hhciAo SmVyZW15IENsaW5lKQorLSBUdXJuIG9uIEJMQUtFMkIgZm9yIEZlZG9yYSAoSmVyZW15IENsaW5l KQorLSBrZXJuZWwuc3BlYy50ZW1wbGF0ZTogQ2xlYW4gdXAgc3RyYXkgKi5oLnMgZmlsZXMgKExh dXJhIEFiYm90dCkKKy0gQnVpbGQgdGhlIFNSUE0gaW4gdGhlIENJIGpvYiAoSmVyZW15IENsaW5l KQorLSBOZXcgY29uZmlncyBpbiBuZXQvdGxzIChKZXJlbXkgQ2xpbmUpCistIE5ldyBjb25maWdz IGluIG5ldC90aXBjIChKZXJlbXkgQ2xpbmUpCistIE5ldyBjb25maWdzIGluIGxpYi9rdW5pdCAo SmVyZW15IENsaW5lKQorLSBGaXggdXAgcmVsZWFzZWRfa2VybmVsIGNhc2UgKExhdXJhIEFiYm90 dCkKKy0gTmV3IGNvbmZpZ3MgaW4gbGliL0tjb25maWcuZGVidWcgKEplcmVteSBDbGluZSkKKy0g TmV3IGNvbmZpZ3MgaW4gZHJpdmVycy9wdHAgKEplcmVteSBDbGluZSkKKy0gTmV3IGNvbmZpZ3Mg aW4gZHJpdmVycy9udm1lIChKZXJlbXkgQ2xpbmUpCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMv bmV0L3BoeSAoSmVyZW15IENsaW5lKQorLSBOZXcgY29uZmlncyBpbiBhcmNoL2FybTY0IChKZXJl bXkgQ2xpbmUpCistIE5ldyBjb25maWdzIGluIGRyaXZlcnMvY3J5cHRvIChKZXJlbXkgQ2xpbmUp CistIE5ldyBjb25maWdzIGluIGNyeXB0by9LY29uZmlnIChKZXJlbXkgQ2xpbmUpCistIEFkZCBs YWJlbCBzbyB0aGUgR2l0bGFiIHRvIGVtYWlsIGJyaWRnZSBpZ25vcmVzIHRoZSBjaGFuZ2Vsb2cg KEplcmVteSBDbGluZSkKKy0gVGVtcG9yYXJpbHkgc3dpdGNoIFRVTkVfREVGQVVMVCB0byB5IChK ZXJlbXkgQ2xpbmUpCistIFJ1biBjb25maWcgdGVzdCBmb3IgbWVyZ2UgcmVxdWVzdHMgYW5kIGlu dGVybmFsIChKZXJlbXkgQ2xpbmUpCistIEFkZCBtaXNzaW5nIGxpY2Vuc2VkaXIgbGluZSAoTGF1 cmEgQWJib3R0KQorLSByZWRoYXQvc2NyaXB0czogUmVtb3ZlIHJlZGhhdC9zY3JpcHRzL3JoX2dl dF9tYWludGFpbmVyLnBsIChQcmFyaXQgQmhhcmdhdmEpCistIGNvbmZpZ3M6IFRha2UgQ09ORklH X0RFRkFVTFRfTU1BUF9NSU5fQUREUiBmcm9tIEZlZHJhIChMYXVyYSBBYmJvdHQpCistIGNvbmZp Z3M6IFR1cm4gb2ZmIElTRE4gKExhdXJhIEFiYm90dCkKKy0gQWRkIGEgc2NyaXB0IHRvIGdlbmVy YXRlIGNvbmZpZ3VyYXRpb24gcGF0Y2hlcyAoTGF1cmEgQWJib3R0KQorLSBJbnRyb2R1Y2Ugcmgt Y29uZmlncy1jb21taXQgKExhdXJhIEFiYm90dCkKKy0ga2VybmVsLXBhY2thZ2luZzogUmVtb3Zl IGtlcm5lbCBmaWxlcyBmcm9tIGtlcm5lbC1tb2R1bGVzLWV4dHJhIHBhY2thZ2UgKFByYXJpdCBC aGFyZ2F2YSkKKy0gY29uZmlnczogRW5hYmxlIENPTkZJR19ERUJVR19XWCAoTGF1cmEgQWJib3R0 KQorLSBjb25maWdzOiBEaXNhYmxlIHdpcmVsZXNzIFVTQiAoTGF1cmEgQWJib3R0KQorLSBDbGVh biB1cCBzb21lIHRlbXBvcmFyeSBjb25maWcgZmlsZXMgKExhdXJhIEFiYm90dCkKKy0gY29uZmln czogTmV3IGNvbmZpZyBpbiBkcml2ZXJzL2dwdSBmb3IgdjUuNC1yYzEgKEplcmVteSBDbGluZSkK Ky0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBhcmNoL3Bvd2VycGMgZm9yIHY1LjQtcmMxIChKZXJl bXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gY3J5cHRvIGZvciB2NS40LXJjMSAo SmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvdXNiIGZvciB2 NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBBVVRPTUFUSUM6IE5ldyBjb25maWdzIChKZXJlbXkg Q2xpbmUpCistIFNraXAga3NhbXBsZXMgZm9yIGJwZiwgdGhleSBhcmUgYnJva2VuIChKZXJlbXkg Q2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gZnMvZXJvZnMgZm9yIHY1LjQtcmMxIChK ZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gbW0gZm9yIHY1LjQtcmMxIChK ZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gZHJpdmVycy9tZCBmb3IgdjUu NC1yYzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBpbml0IGZvciB2 NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGZzL2Z1c2Ug Zm9yIHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUpCistIG1lcmdlLnBsOiBBdm9pZCBjb21tZW50cyBi dXQgZG8gbm90IHNraXAgdGhlbSAoRG9uIFppY2t1cykKKy0gY29uZmlnczogTmV3IGNvbmZpZyBp biBkcml2ZXJzL25ldC9ldGhlcm5ldC9wZW5zYW5kbyBmb3IgdjUuNC1yYzEgKEplcmVteSBDbGlu ZSkKKy0gVXBkYXRlIGEgY29tbWVudCBhYm91dCB3aGF0IHJlbGVhc2VkIGtlcm5lbCBtZWFucyAo TGF1cmEgQWJib3R0KQorLSBQcm92aWRlIGJvdGggRmVkb3JhIGFuZCBSSEVMIGZpbGVzIGluIHRo ZSBTUlBNIChMYXVyYSBBYmJvdHQpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBUcmltIEVYVFJB VkVSU0lPTiBpbiB0aGUgTWFrZWZpbGUgKExhdXJhIEFiYm90dCkKKy0ga2VybmVsLnNwZWMudGVt cGxhdGU6IEFkZCBtYWNyb3MgZm9yIGJ1aWxkaW5nIHdpdGggbm9wYXRjaGVzIChMYXVyYSBBYmJv dHQpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBBZGQgc29tZSBtYWNyb3MgZm9yIEZlZG9yYSBk aWZmZXJlbmNlcyAoTGF1cmEgQWJib3R0KQorLSBrZXJuZWwuc3BlYy50ZW1wbGF0ZTogQ29uc29s b2RhdGUgdGhlIG9wdGlvbnMgKExhdXJhIEFiYm90dCkKKy0gY29uZmlnczogQWRkIHBlbmRpbmcg ZGlyZWNvcnkgdG8gRmVkb3JhIChMYXVyYSBBYmJvdHQpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRl OiBEb24ndCBydW4gaGFyZGxpbmsgaWYgcnBtLW9zdHJlZSBpcyBpbiB1c2UgKExhdXJhIEFiYm90 dCkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBuZXQvY2FuIGZvciB2NS40LXJjMSAoSmVyZW15 IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvbmV0L3BoeSBmb3IgdjUu NC1yYzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogSW5jcmVhc2UgeDg2XzY0IE5SX1VBUlRT IHRvIDY0IChQcmFyaXQgQmhhcmdhdmEpIFsxNzMwNjQ5XQorLSBjb25maWdzOiB0dXJuIG9uIEFS TTY0X0ZPUkNFXzUyQklUIGZvciBkZWJ1ZyBidWlsZHMgKEplcmVteSBDbGluZSkKKy0ga2VybmVs LnNwZWMudGVtcGxhdGU6IFR3ZWFrIHRoZSBweXRob24zIG1hbmdsaW5nIChMYXVyYSBBYmJvdHQp CistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBBZGQgLS13aXRoIHZlcmJvc2Ugb3B0aW9uIChMYXVy YSBBYmJvdHQpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBTd2l0Y2ggdG8gdXNpbmcgJSVpbnN0 YWxsIGluc3RlYWQgb2YgJSVfX2luc3RhbGwgKExhdXJhIEFiYm90dCkKKy0ga2VybmVsLnNwZWMu dGVtcGxhdGU6IE1ha2UgdGhlIGtlcm5lbC5vcmcgVVJMIGh0dHBzIChMYXVyYSBBYmJvdHQpCist IGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBVcGRhdGUgbWVzc2FnZSBhYm91dCBzZWN1cmUgYm9vdCBz aWduaW5nIChMYXVyYSBBYmJvdHQpCistIGtlcm5lbC5zcGVjLnRlbXBsYXRlOiBNb3ZlIHNvbWUg d2l0aCBmbGFncyBkZWZpbml0aW9ucyB1cCAoTGF1cmEgQWJib3R0KQorLSBrZXJuZWwuc3BlYy50 ZW1wbGF0ZTogVXBkYXRlIHNvbWUgQnVpbGRSZXF1aXJlcyAoTGF1cmEgQWJib3R0KQorLSBrZXJu ZWwuc3BlYy50ZW1wbGF0ZTogR2V0IHJpZCBvZiAlJWNsZWFuIChMYXVyYSBBYmJvdHQpCistIGNv bmZpZ3M6IE5ldyBjb25maWcgaW4gZHJpdmVycy9jaGFyIGZvciB2NS40LXJjMSAoSmVyZW15IENs aW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIG5ldC9zY2hlZCBmb3IgdjUuNC1yYzEgKEpl cmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBsaWIgZm9yIHY1LjQtcmMxIChK ZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gZnMvdmVyaXR5IGZvciB2NS40 LXJjMSAoSmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGFyY2gvYWFyY2g2 NCBmb3IgdjUuNC1yYzQgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBh cmNoL2FybTY0IGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBGbGlwIG9mZiBDT05GSUdf QVJNNjRfVkFfQklUU181MiBzbyB0aGUgYnVuZGxlIHRoYXQgdHVybnMgaXQgb24gYXBwbGllcyAo SmVyZW15IENsaW5lKQorLSBOZXcgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB2NS40LXJjNCAo SmVyZW15IENsaW5lKQorLSBDb3JyZWN0bHkgbmFtZSB0YXJiYWxsIGZvciBzaW5nbGUgdGFyYmFs bCBidWlsZHMgKExhdXJhIEFiYm90dCkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBkcml2ZXJz L3BjaSBmb3IgdjUuNC1yYzEgKEplcmVteSBDbGluZSkKKy0gQWxsb3cgb3ZlcnJpZGluZyB0aGUg ZGlzdCB0YWcgb24gdGhlIGNvbW1hbmQgbGluZSAoTGF1cmEgQWJib3R0KQorLSBBbGxvdyBzY3Jh dGNoIGJyYW5jaCB0YXJnZXQgdG8gYmUgb3ZlcnJpZGRlbiAoTGF1cmEgQWJib3R0KQorLSBSZW1v dmUgbG9uZyBkZWFkIEJVSUxEX0RFRkFVTFRfVEFSR0VUIChMYXVyYSBBYmJvdHQpCistIEFtZW5k IHRoZSBjaGFuZ2Vsb2cgd2hlbiByZWJhc2luZyAoTGF1cmEgQWJib3R0KQorLSBjb25maWdzOiBO ZXcgY29uZmlnIGluIGRyaXZlcnMvcGxhdGZvcm0gZm9yIHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUp CistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gZHJpdmVycy9waW5jdHJsIGZvciB2NS40LXJjMSAo SmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvbmV0L3dpcmVs ZXNzIGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGlu IGRyaXZlcnMvbmV0L2V0aGVybmV0L21lbGxhbm94IGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5l KQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvbmV0L2NhbiBmb3IgdjUuNC1yYzEg KEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBkcml2ZXJzL2hpZCBmb3Ig djUuNC1yYzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBkcml2ZXJz L2RtYS1idWYgZm9yIHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25m aWcgaW4gZHJpdmVycy9jcnlwdG8gZm9yIHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUpCistIGNvbmZp Z3M6IE5ldyBjb25maWcgaW4gYXJjaC9zMzkwIGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5lKQor LSBjb25maWdzOiBOZXcgY29uZmlnIGluIGJsb2NrIGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5l KQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvY3B1aWRsZSBmb3IgdjUuNC1yYzEg KEplcmVteSBDbGluZSkKKy0gcmVkaGF0OiBjb25maWdzOiBTcGxpdCBDT05GSUdfQ1JZUFRPX1NI QTUxMiAoTGF1cmEgQWJib3R0KQorLSByZWRoYXQ6IFNldCBGZWRvcmEgb3B0aW9ucyAoTGF1cmEg QWJib3R0KQorLSBTZXQgQ1JZUFRPX1NIQTNfKl9TMzkwIHRvIGJ1aWx0aW4gb24gemZjcGR1bXAg KEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBkcml2ZXJzL2VkYWMgZm9y IHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IE5ldyBjb25maWcgaW4gZHJpdmVy cy9maXJtd2FyZSBmb3IgdjUuNC1yYzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNv bmZpZyBpbiBkcml2ZXJzL2h3bW9uIGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBjb25m aWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvaWlvIGZvciB2NS40LXJjMSAoSmVyZW15IENsaW5l KQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvbW1jIGZvciB2NS40LXJjMSAoSmVy ZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvdHR5IGZvciB2NS40 LXJjMSAoSmVyZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIGFyY2gvczM5MCBm b3IgdjUuNC1yYzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBkcml2 ZXJzL2J1cyBmb3IgdjUuNC1yYzEgKEplcmVteSBDbGluZSkKKy0gQWRkIG9wdGlvbiB0byBhbGxv dyBtaXNtYXRjaGVkIGNvbmZpZ3Mgb24gdGhlIGNvbW1hbmQgbGluZSAoTGF1cmEgQWJib3R0KQor LSBjb25maWdzOiBOZXcgY29uZmlnIGluIGRyaXZlcnMvY3J5cHRvIGZvciB2NS40LXJjMSAoSmVy ZW15IENsaW5lKQorLSBjb25maWdzOiBOZXcgY29uZmlnIGluIHNvdW5kL3BjaSBmb3IgdjUuNC1y YzEgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogTmV3IGNvbmZpZyBpbiBzb3VuZC9zb2MgZm9y IHY1LjQtcmMxIChKZXJlbXkgQ2xpbmUpCistIGdpdGxhYjogQWRkIENJIGpvYiBmb3IgcGFja2Fn aW5nIHNjcmlwdHMgKE1ham9yIEhheWRlbikKKy0gU3BlZWQgdXAgQ0kgd2l0aCBDS0kgaW1hZ2Ug KE1ham9yIEhheWRlbikKKy0gRGlzYWJsZSBlMTAwMCBkcml2ZXIgaW4gQVJLIChOZWlsIEhvcm1h bikKKy0gY29uZmlnczogRml4IHRoZSBwZW5kaW5nIGRlZmF1bHQgZm9yIENPTkZJR19BUk02NF9W QV9CSVRTXzUyIChKZXJlbXkgQ2xpbmUpCistIGNvbmZpZ3M6IFR1cm4gb24gT1BUSU1JWkVfSU5M SU5JTkcgZm9yIGV2ZXJ5dGhpbmcgKEplcmVteSBDbGluZSkKKy0gY29uZmlnczogU2V0IHZhbGlk IHBlbmRpbmcgZGVmYXVsdHMgZm9yIENSWVBUT19FU1NJViAoSmVyZW15IENsaW5lKQorLSBBZGQg YW4gaW5pdGlhbCBDSSBjb25maWd1cmF0aW9uIGZvciB0aGUgaW50ZXJuYWwgYnJhbmNoIChKZXJl bXkgQ2xpbmUpCistIE5ldyBkcm9wIG9mIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdjUuNC1y YzEgKEplcmVteSBDbGluZSkKKy0gTmV3IGRyb3Agb2YgY29uZmlndXJhdGlvbiBvcHRpb25zIGZv ciB2NS40LXJjMSAoSmVyZW15IENsaW5lKQorLSBQdWxsIHRoZSBSSEVMIHZlcnNpb24gZGVmaW5l cyBvdXQgb2YgdGhlIE1ha2VmaWxlIChKZXJlbXkgQ2xpbmUpCistIFN5bmMgdXAgdGhlIEFSSyBi dWlsZCBzY3JpcHRzIChKZXJlbXkgQ2xpbmUpCistIFN5bmMgdXAgdGhlIEZlZG9yYSBSYXdoaWRl IGNvbmZpZ3MgKEplcmVteSBDbGluZSkKKy0gU3luYyB1cCB0aGUgQVJLIGNvbmZpZyBmaWxlcyAo SmVyZW15IENsaW5lKQorLSBjb25maWdzOiBBZGp1c3QgQ09ORklHX0ZPUkNFX01BWF9aT05FT1JE RVIgZm9yIEZlZG9yYSAoTGF1cmEgQWJib3R0KQorLSBjb25maWdzOiBBZGQgUkVBRE1FIGZvciBz b21lIG90aGVyIGFyY2hlcyAoTGF1cmEgQWJib3R0KQorLSBjb25maWdzOiBTeW5jIHVwIEZlZG9y YSBjb25maWdzIChMYXVyYSBBYmJvdHQpCistIFtpbml0aWFsIGNvbW1pdF0gQWRkIHN0cnVjdHVy ZSBmb3IgYnVpbGRpbmcgd2l0aCBnaXQgKExhdXJhIEFiYm90dCkKKy0gW2luaXRpYWwgY29tbWl0 XSBBZGQgUmVkIEhhdCB2YXJpYWJsZXMgaW4gdGhlIHRvcCBsZXZlbCBtYWtlZmlsZSAoTGF1cmEg QWJib3R0KQorLSBbaW5pdGlhbCBjb21taXRdIFJlZCBIYXQgZ2l0aWdub3JlIGFuZCBhdHRyaWJ1 dGVzIChMYXVyYSBBYmJvdHQpCistIFtpbml0aWFsIGNvbW1pdF0gQWRkIGNoYW5nZWxvZyAoTGF1 cmEgQWJib3R0KQorLSBbaW5pdGlhbCBjb21taXRdIEFkZCBtYWtlZmlsZSAoTGF1cmEgQWJib3R0 KQorLSBbaW5pdGlhbCBjb21taXRdIEFkZCBmaWxlcyBmb3IgZ2VuZXJhdGluZyB0aGUga2VybmVs LnNwZWMgKExhdXJhIEFiYm90dCkKKy0gW2luaXRpYWwgY29tbWl0XSBBZGQgcnBtIGRpcmVjdG9y eSAoTGF1cmEgQWJib3R0KQorLSBbaW5pdGlhbCBjb21taXRdIEFkZCBmaWxlcyBmb3IgcGFja2Fn aW5nIChMYXVyYSBBYmJvdHQpCistIFtpbml0aWFsIGNvbW1pdF0gQWRkIGthYmkgZmlsZXMgKExh dXJhIEFiYm90dCkKKy0gW2luaXRpYWwgY29tbWl0XSBBZGQgc2NyaXB0cyAoTGF1cmEgQWJib3R0 KQorLSBbaW5pdGlhbCBjb21taXRdIEFkZCBjb25maWdzIChMYXVyYSBBYmJvdHQpCistIFtpbml0 aWFsIGNvbW1pdF0gQWRkIE1ha2VmaWxlcyAoTGF1cmEgQWJib3R0KQorLSBMaW51eCB2Ny4zLjAt MC5yYzAuMGYyM2Q1NmYxN2ZkCitSZXNvbHZlczogUkhFTC0xMDAxMDQsIFJIRUwtMTA0MjMxLCBS SEVMLTExOTMyNiwgUkhFTC0xMjI5NzksIFJIRUwtMTI0MiwgUkhFTC0xMzUyNTYsIFJIRUwtMTQx NjQ3LCBSSEVMLTE0MjYzNywgUkhFTC0xNDcyOTYsIFJIRUwtMTUwODUzLCBSSEVMLTE4NTkzMCwg UkhFTC0xODY5MzQsIFJIRUwtMTkyNywgUkhFTC0yMzkzMSwgUkhFTC0yNDA0NywgUkhFTC0yNDEz NywgUkhFTC0yNjE3MCwgUkhFTC0yOTI0NSwgUkhFTC0zMjExMCwgUkhFTC0zMjg5NSwgUkhFTC0z Mjk4NywgUkhFTC0zNTk5NSwgUkhFTC0zNjY0NiwgUkhFTC0zNjY0NywgUkhFTC00MDI1MSwgUkhF TC00MDQxMSwgUkhFTC00MDkzNywgUkhFTC00MTIzMSwgUkhFTC00MzQyNSwgUkhFTC00MzU1Niwg UkhFTC00NDMwNiwgUkhFTC00OTM5OCwgUkhFTC01MDc5OSwgUkhFTC01MTg5NiwgUkhFTC01MjYy OSwgUkhFTC01NDE4MywgUkhFTC01NjA2OSwgUkhFTC02ODI5NiwgUkhFTC03MjA5MywgUkhFTC03 ODM0MSwgUkhFTC03ODkzMSwgUkhFTC03OTcxMSwgUkhFTC03OTgxOCwgUkhFTC04Mjc3OSwgUkhF TC04NTMwMSwgUkhFTC04ODEwLCBSSEVMLTg4MjI4LCBSSEVMLTg4NjM1LCBSSEVMLTk0NTAzLCBS SEVMLTk1NDM2LCBSSEVMLTk2OTg3LCByaGJ6IzE0NzExODUsIHJoYnojMTUxODA3NiwgcmhieiMx NTE5NTU0LCByaGJ6IzE1NDY4MzEsIHJoYnojMTU1OTg3NywgcmhieiMxNTYxMTcxLCByaGJ6IzE1 NjM1OTAsIHJoYnojMTU2NTcwNCwgcmhieiMxNTY1NzE3LCByaGJ6IzE1NzIzMjEsIHJoYnojMTU5 MDgyOSwgcmhieiMxNTk1OTE4LCByaGJ6IzE2MDIwMzMsIHJoYnojMTYwOTYwNCwgcmhieiMxNjEw NDkzLCByaGJ6IzE2MTM1MjIsIHJoYnojMTYzODA4NywgcmhieiMxNjUyMjU2LCByaGJ6IzE2NTIy NjYsIHJoYnojMTY2MzcyOCwgcmhieiMxNjcwMDE3LCByaGJ6IzE3MjIxMzYsIHJoYnojMTczMDY0 OSwgcmhieiMxODAyNjk0LCByaGJ6IzE4MTAzMDEsIHJoYnojMTgyMTU2NSwgcmhieiMxODMxMDY1 LCByaGJ6IzE4NTUxNjEsIHJoYnojMTg1NjE3NCwgcmhieiMxODU2MTc2LCByaGJ6IzE4NTg1OTIs IHJoYnojMTg1ODU5NCwgcmhieiMxODU4NTk2LCByaGJ6IzE4NTg1OTksIHJoYnojMTg2OTY3NCwg cmhieiMxODcxMTMwLCByaGJ6IzE4NzY0MzUsIHJoYnojMTg3NjQzNiwgcmhieiMxODc2OTc3LCBy aGJ6IzE4NzcxOTIsIHJoYnojMTg4MDQ4NiwgcmhieiMxODkwMzA0LCByaGJ6IzE5MDMyMDEsIHJo YnojMTkxNTA3MywgcmhieiMxOTE1MjkwLCByaGJ6IzE5MzA2NDksIHJoYnojMTkzOTA5NSwgcmhi eiMxOTQwMDc1LCByaGJ6IzE5NDA3OTQsIHJoYnojMTk0MzQyMywgcmhieiMxOTQ1MDAyLCByaGJ6 IzE5NDUxNzksIHJoYnojMTk0NTQ3NywgcmhieiMxOTQ3MjQwLCByaGJ6IzE5NDgzNDAsIHJoYnoj MTk1MjQyNiwgcmhieiMxOTUyODYzLCByaGJ6IzE5NTM0ODYsIHJoYnojMTk1Njk4OCwgcmhieiMx OTU3MjEwLCByaGJ6IzE5NTcyMTksIHJoYnojMTk1NzMwNSwgcmhieiMxOTU3NjM2LCByaGJ6IzE5 NTc4MTksIHJoYnojMTk2MTE3OCwgcmhieiMxOTYyOTM2LCByaGJ6IzE5NjQ1MzcsIHJoYnojMTk2 NzY0MCwgcmhieiMxOTcyNzk1LCByaGJ6IzE5NzYyNzAsIHJoYnojMTk3NjgzNSwgcmhieiMxOTc2 ODc3LCByaGJ6IzE5NzY4ODQsIHJoYnojMTk3NzA1NiwgcmhieiMxOTc3NTI5LCByaGJ6IzE5Nzg1 MzksIHJoYnojMTk3OTM3OSwgcmhieiMxOTgxNDA2LCByaGJ6IzE5ODMyOTgsIHJoYnojMTk4NjIy MywgcmhieiMxOTg4MjU0LCByaGJ6IzE5ODgzODQsIHJoYnojMTk5MDA0MCwgcmhieiMxOTkzMzkz LCByaGJ6IzE5OTQ4NTgsIHJoYnojMTk5ODk1MywgcmhieiMyMDAwODM1LCByaGJ6IzIwMDIzNDQs IHJoYnojMjAwNDIzMywgcmhieiMyMDA0ODIxLCByaGJ6IzIwMDY4MTMsIHJoYnojMjAwNzQzMCwg cmhieiMyMDEyMjI2LCByaGJ6IzIwMTQ0OTIsIHJoYnojMjAxOTM3NywgcmhieiMyMDIwMTMyLCBy aGJ6IzIwMjI1NzgsIHJoYnojMjAyMzc4MiwgcmhieiMyMDI0NTk1LCByaGJ6IzIwMjU5ODUsIHJo YnojMjAyNjMxOSwgcmhieiMyMDI3NTA2LCByaGJ6IzIwMzE1NDcsIHJoYnojMjAzMjc1OCwgcmhi eiMyMDM0NjcwLCByaGJ6IzIwMzg5OTksIHJoYnojMjA0MDY0MywgcmhieiMyMDQxMTg0LCByaGJ6 IzIwNDExODYsIHJoYnojMjA0MTM2NSwgcmhieiMyMDQxOTkwLCByaGJ6IzIwNDIyNDAsIHJoYnoj MjA0MjI0MSwgcmhieiMyMDQzMTQxLCByaGJ6IzIwNDQxNTUsIHJoYnojMjA1MzgzNiwgcmhieiMy MDU0NTc5LCByaGJ6IzIwNjIwNTQsIHJoYnojMjA2MjkwOSwgcmhieiMyMDcxOTY5LCByaGJ6IzIw ODk3NjUsIHJoYnojMjExNTg3NiwgcmhieiMyMTIwOTY4LCByaGJ6IzIxMjI1OTUsIHJoYnojMjE0 MDAxNywgcmhieiMyMTQyNjU4LCByaGJ6IzIxNDkyNzMsIHJoYnojMjE1MzA3MywgcmhieiMyMTY2 OTExLCByaGJ6IzIxODg0NDEsIHJoYnojMjIwODgzNCwgcmhieiMyMjE2Njc4LCByaGJ6IzIyMjc3 OTMsIHJoYnojMjIzMTQwNywgcmhieiMyMjMzMjY5LCByaGJ6IzIzNzUwNDkKKworKiBUdWUgQXVn IDE4IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9y Zz4gWzcuMi4wLTFdCistIFJlc2V0IE1ha2VmaWxlLnJoZWx2ZXIgZm9yIHRoZSA3LjMgY3ljbGUg KEp1c3RpbiBNLiBGb3JiZXMpCistIE1lcmdlIGNvbmZpZ3MgaW50byBjb21tb24gZm9yIDcuMiAo SnVzdGluIE0uIEZvcmJlcykKKy0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9tb3RpdmU6IGVuYWJsZSBS VENfRFJWX1BMMDMxIChFcmljIENoYW51ZGV0KQorLSByZWRoYXQ6IG5hbWUgdGhlIGR0YiBhbmQg VUtJIGFyY2ggbGlzdHMgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IHVzZSBvbmUgc3BlbGxpbmcg Zm9yIHRoZSBub2J1aWxkYXJjaGVzIGZpbGVzIGd1YXJkIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0 OiBkcm9wIHN0YWxlIHBwYzY0IGZyb20gdGhlIGthYmlkdy1iYXNlIGFyY2ggbGlzdCAoSmFuIFN0 YW5jZWspCistIHJlZGhhdDogZG9jdW1lbnQgdGhlIGthYmljaGsgZm9yY2Utb2ZmIGFzIGEgc2Vh c29uYWwgdG9nZ2xlIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiB1c2Ugb25lIHNwZWxsaW5nIGZv ciB0aGUgaW5jbHVkZSBhbmQgZ2VtaW5pIGNvbmRpdGlvbmFscyAoSmFuIFN0YW5jZWspCistIHJl ZGhhdDogcmVtb3ZlIHVudXNlZCBlbGZfaW1hZ2VfaW5zdGFsbF9wYXRoIGFuZCBkdXBsaWNhdGUg ZGVmaW5lcyAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZHJvcCB0aGUgZGVhZCBrZXJuZWwtdG9v bHMgX19yZXF1aXJlc19leGNsdWRlIHB5dGhvbiBmaWx0ZXIgKEphbiBTdGFuY2VrKQorLSByZWRo YXQ6IGRyb3AgdGhlIEZlZG9yYSA0MSBjcm9zcy1idWlsZCBnZGItaW5kZXggd29ya2Fyb3VuZCAo SmFuIFN0YW5jZWspCistIHJlZGhhdDogZHJvcCBzdGFsZSBidWlsZCBzd2l0Y2hlcyBmcm9tIGRp c3QtcGVyZiBhbmQgZGlzdC1ycG0tYmFzZW9ubHkgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGdp dmUga2VybmVsLWF1dG9tb3RpdmUgaXRzIG93biBzdW1tYXJ5IChKYW4gU3RhbmNlaykKKy0gcmVk aGF0OiBkcm9wIGxlZnRvdmVyIGtlcm5lbF9rdm1fcG9zdCBjYWxscyBmb3IgcnQtNjRrIChKYW4g U3RhbmNlaykKKy0gcmVkaGF0OiByZXN0b3JlIG1pc3Npbmcgc3VtbWFyeSBvZiB0aGUga2VybmVs LWRlYnVnIHZhcmlhbnQgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGZpeCBwYXJzZSBlcnJvciBp biBiYXNlb25seSBzYW5pdHkgY2hlY2sgbWVzc2FnZSAoSmFuIFN0YW5jZWspCitSZXNvbHZlczog CisKICogTW9uIEF1ZyAxNyAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVk b3JhcHJvamVjdC5vcmc+IFs3LjIuMC02MF0KIC0gZHJhY3V0LXZpcnQuY29uZjogY2hhbmdlIHN5 c3RlbWQtcGNycGhhc2UgdG8gc3lzdGVtZC1wY3JleHRlbmQgKFZpdGFseSBLdXpuZXRzb3YpCiAt IHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogU3dpdGNoIFVLSSBhZGRvbnMgdG8gdXNpbmcg VUtJIGNlcnQgKFZpdGFseSBLdXpuZXRzb3YpCgpkaWZmIC0tZ2l0IGEva2VybmVsLnNwZWMgYi9r ZXJuZWwuc3BlYwppbmRleCA4MTMyZjdmLi43ZDFlMjlmIDEwMDY0NAotLS0gYS9rZXJuZWwuc3Bl YworKysgYi9rZXJuZWwuc3BlYwpAQCAtMTIyLDYgKzEyMiwxMSBAQCBTdW1tYXJ5OiBUaGUgTGlu dXgga2VybmVsCiAlZ2xvYmFsIHNpZ25rZXJuZWwgMAogJWVuZGlmCiAKKyMgQXJjaGVzIHdob3Nl IGtlcm5lbHMgc2hpcCBkZXZpY2UgdHJlZSBibG9icworJWdsb2JhbCBkdGJfYXJjaGVzIGFhcmNo NjQgcmlzY3Y2NAorIyBBcmNoZXMgdGhhdCBidWlsZCB0aGUgRUZJIHVuaWZpZWQga2VybmVsIGlt YWdlcworJWdsb2JhbCB1a2lfYXJjaGVzIHg4Nl82NCBhYXJjaDY0IHJpc2N2NjQKKwogIyBSSEVM L0NlbnRPUyBzcGVjaWZpYyAuU0JBVCBlbnRyaWVzCiAlaWYgMCV7P2NlbnRvc30KICVnbG9iYWwg c2JhdF9zdWZmaXggY2VudG9zCkBAIC0xODcsMTggKzE5MiwxOCBAQCBTdW1tYXJ5OiBUaGUgTGlu dXgga2VybmVsCiAjICB0aGUgLS13aXRoLXJlbGVhc2Ugb3B0aW9uIG92ZXJyaWRlcyB0aGlzIHNl dHRpbmcuKQogJWRlZmluZSBkZWJ1Z2J1aWxkc2VuYWJsZWQgMQogIyBkZWZpbmUgYnVpbGRpZCAu bG9jYWwKLSVkZWZpbmUgc3BlY3JwbXZlcnNpb24gNy4yLjAKLSVkZWZpbmUgc3BlY3ZlcnNpb24g Ny4yLjAKLSVkZWZpbmUgcGF0Y2h2ZXJzaW9uIDcuMgotJWRlZmluZSBwa2dyZWxlYXNlIDYxCisl ZGVmaW5lIHNwZWNycG12ZXJzaW9uIDcuMy4wCislZGVmaW5lIHNwZWN2ZXJzaW9uIDcuMy4wCisl ZGVmaW5lIHBhdGNodmVyc2lvbiA3LjMKKyVkZWZpbmUgcGtncmVsZWFzZSAwLnJjMC4yNjA4MThn MGYyM2Q1NmYxN2ZkLjMKICVkZWZpbmUga3ZlcnNpb24gNwotJWRlZmluZSB0YXJmaWxlX3JlbGVh c2UgNy4yCislZGVmaW5lIHRhcmZpbGVfcmVsZWFzZSA3LjItNDM3LWcwZjIzZDU2ZjE3ZmQKICMg VGhpcyBpcyBuZWVkZWQgdG8gZG8gbWVyZ2Ugd2luZG93IHZlcnNpb24gbWFnaWMKLSVkZWZpbmUg cGF0Y2hsZXZlbCAyCislZGVmaW5lIHBhdGNobGV2ZWwgMwogIyBUaGlzIGFsbG93cyBwa2dfcmVs ZWFzZSB0byBoYXZlIGNvbmZpZ3VyYWJsZSAlJXs/ZGlzdH0gdGFnCi0lZGVmaW5lIHNwZWNyZWxl YXNlIDYxJXs/YnVpbGRpZH0lez9kaXN0fQorJWRlZmluZSBzcGVjcmVsZWFzZSAwLnJjMC4yNjA4 MThnMGYyM2Q1NmYxN2ZkLjMlez9idWlsZGlkfSV7P2Rpc3R9CiAjIFRoaXMgZGVmaW5lcyB0aGUg a2FiaSB0YXJiYWxsIHZlcnNpb24KLSVkZWZpbmUga2FiaXZlcnNpb24gNy4yLjAKKyVkZWZpbmUg a2FiaXZlcnNpb24gNy4zLjAKIAogIyBJZiB0aGlzIHZhcmlhYmxlIGlzIHNldCB0byAxLCBhIGJw ZiBzZWxmdGVzdHMgYnVpbGQgZmFpbHVyZSB3aWxsIGNhdXNlIGEKICMgZmF0YWwga2VybmVsIHBh Y2thZ2UgYnVpbGQgZXJyb3IKQEAgLTMwNSw3ICszMTAsOSBAQCBTdW1tYXJ5OiBUaGUgTGludXgg a2VybmVsCiAlZGVmaW5lIHdpdGhfdG9vbHNvbmx5ICV7P193aXRoX3Rvb2xzb25seTogICAgMX0g JXs/IV93aXRoX3Rvb2xzb25seTogICAgMH0KICMgQ29udHJvbCB3aGV0aGVyIHdlIHBlcmZvcm0g YSBjb21wYXQuIGNoZWNrIGFnYWluc3QgcHVibGlzaGVkIEFCSS4KICVkZWZpbmUgd2l0aF9rYWJp Y2hrICAgJXs/X3dpdGhvdXRfa2FiaWNoazogICAwfSAlez8hX3dpdGhvdXRfa2FiaWNoazogICAx fQotIyBUZW1wb3JhcmlseSBkaXNhYmxlIGthYmkgY2hlY2tzIHVudGlsIFJDLgorIyBTZWFzb25h bCB0b2dnbGUsIG5vdCBkZWFkIGNvZGU6IGZsaXBwZWQgb2ZmIGFmdGVyIGEgcmViYXNlIGFuZCBi YWNrIG9uCisjIG9uY2UgdGhlIGtBQkkgc3RhYmxlbGlzdHMgYXJlIHVwZGF0ZWQgZm9yIHRoZSBu ZXcgcmVsZWFzZSAoYXQgUkMpLgorIyBXaGlsZSAwLCBpdCBhbHNvIGZvcmNlcyB3aXRoX2thYmlk dXBjaGsgYW5kIHdpdGhfa2FiaWR3Y2hrIG9mZiBiZWxvdy4KICVkZWZpbmUgd2l0aF9rYWJpY2hr IDAKICMgQ29udHJvbCB3aGV0aGVyIHdlIHBlcmZvcm0gYSBjb21wYXQuIGNoZWNrIGFnYWluc3Qg RFVQIEFCSS4KICVkZWZpbmUgd2l0aF9rYWJpZHVwY2hrICV7P193aXRoX2thYmlkdXBjaGs6ICAx fSAlez8hX3dpdGhfa2FiaWR1cGNoazogICAwfQpAQCAtMzQxLDcgKzM0OCw3IEBAIFN1bW1hcnk6 IFRoZSBMaW51eCBrZXJuZWwKICMgV2FudCB0byBidWlsZCBhIHZhbmlsbGEga2VybmVsIGJ1aWxk IHdpdGhvdXQgYW55IG5vbi11cHN0cmVhbSBwYXRjaGVzPwogJWRlZmluZSB3aXRoX3ZhbmlsbGEg JXs/X3dpdGhfdmFuaWxsYTogMX0gJXs/IV93aXRoX3ZhbmlsbGE6IDB9CiAKLSVpZmFyY2ggeDg2 XzY0IGFhcmNoNjQgcmlzY3Y2NAorJWlmYXJjaCAle3VraV9hcmNoZXN9CiAlZGVmaW5lIHdpdGhf ZWZpdWtpICV7P193aXRob3V0X2VmaXVraTogMH0gJXs/IV93aXRob3V0X2VmaXVraTogMX0KICVl bHNlCiAlZGVmaW5lIHdpdGhfZWZpdWtpIDAKQEAgLTUxNSw4ICs1MjIsNiBAQCBTdW1tYXJ5OiBU aGUgTGludXgga2VybmVsCiAlZGVmaW5lIHdpdGhfa2FiaWR3Y2hrIDAKICVkZWZpbmUgd2l0aF9r YWJpZHdfYmFzZSAwCiAlZGVmaW5lIHdpdGhfa2VybmVsX2FiaV9zdGFibGVsaXN0cyAwCi0lZGVm aW5lIHdpdGhfc2VsZnRlc3RzIDAKLSVkZWZpbmUgd2l0aF92ZHNvX2luc3RhbGwgMAogJWRlZmlu ZSB3aXRoX2NvbmZpZ2NoZWNrcyAwCiAlZW5kaWYKIApAQCAtNjQ1LDcgKzY1MCw2IEBAIFN1bW1h cnk6IFRoZSBMaW51eCBrZXJuZWwKICVkZWZpbmUgaGRyYXJjaCBwb3dlcnBjCiAlZGVmaW5lIG1h a2VfdGFyZ2V0IHZtbGludXgKICVkZWZpbmUga2VybmVsX2ltYWdlIHZtbGludXgKLSVkZWZpbmUg a2VybmVsX2ltYWdlX2VsZiAxCiAlZGVmaW5lIHVzZV92ZHNvIDAKICVlbmRpZgogCkBAIC05MzQs MTYgKzkzOCw2IEBAIEJ1aWxkUmVxdWlyZXM6IHBlc2lnbiA+PSAwLjEwLTQKIEJ1aWxkUmVxdWly ZXM6IGJpbnV0aWxzLSV7X2J1aWxkX2FyY2h9LWxpbnV4LWdudSwgZ2NjLSV7X2J1aWxkX2FyY2h9 LWxpbnV4LWdudQogJWRlZmluZSBjcm9zc19vcHRzIENST1NTX0NPTVBJTEU9JXtfYnVpbGRfYXJj aH0tbGludXgtZ251LQogJWRlZmluZSBfX3N0cmlwICV7X2J1aWxkX2FyY2h9LWxpbnV4LWdudS1z dHJpcAotCi0laWYgMCV7P2ZlZG9yYX0gJiYgMCV7P2ZlZG9yYX0gPD0gNDEKLSMgV29yayBhcm91 bmQgZmluZC1kZWJ1Z2luZm8gZm9yIGNyb3NzIGJ1aWxkcy4KLSMgZmluZC1kZWJ1Z2luZm8gZG9l c24ndCBzdXBwb3J0IGFueSBvZiBDUk9TUyBvcHRpb25zIChSSEVMLTIxNzk3KSwKLSMgYW5kIHNp bmNlIGRlYnVnZWRpdCA+IDUuMC0xNi5lbDEwLCBvciBzaW5jZSBjb21taXQKLSMgICBkZmUxZjdm ZjMwZjQgKCJmaW5kLWRlYnVnaW5mby5zaDogRXhpdCB3aXRoIHJlYWwgZXhpdCBzdGF0dXMgaW4g cGFyYWxsZWwgam9icyIpCi0jIGl0IG5vdyBhYm9ydHMgb24gZmFpbHVyZSBhbmQgYnVpbGQgZmFp bHMuCi0jIGRlYnVnZWRpdC01LjEtNSBpbiBGNDIgYWRkZWQgc3VwcG9ydCB0byBvdmVycmlkZSB0 b29scyB3aXRoIHRhcmdldCB2ZXJzaW9ucy4KLSV1bmRlZmluZSBfaW5jbHVkZV9nZGJfaW5kZXgK LSVlbmRpZgogJWVuZGlmCiAKICMgVGhlc2UgYmVsb3cgYXJlIHJlcXVpcmVkIHRvIGJ1aWxkIG1h biBwYWdlcwpAQCAtMTA2Niw3ICsxMDYwLDcgQEAgU291cmNlNDQ6ICV7bmFtZX0tcmlzY3Y2NC1y aGVsLmNvbmZpZwogU291cmNlNDU6ICV7bmFtZX0tcmlzY3Y2NC1kZWJ1Zy1yaGVsLmNvbmZpZwog JWVuZGlmCiAKLSVpZiAle2luY2x1ZGVfcmhlbH0gfHwgJXtpbmNsdWRlX2F1dG9tb3RpdmV9Cisl aWYgMCV7P2luY2x1ZGVfcmhlbH0gfHwgMCV7P2luY2x1ZGVfYXV0b21vdGl2ZX0KIFNvdXJjZTIz OiB4NTA5LmdlbmtleS5yaGVsCiBTb3VyY2UzNDogZGVmX3ZhcmlhbnRzLnlhbWwucmhlbAogU291 cmNlNDE6IHg1MDkuZ2Vua2V5LmNlbnRvcwpAQCAtMTE2MCw4ICsxMTU0LDggQEAgU291cmNlMjE0 OiBNb2R1bGUua2FiaV9kdXBfcmlzY3Y2NAogU291cmNlMzAwOiBrZXJuZWwtYWJpLXN0YWJsZWxp c3RzLSV7a2FiaXZlcnNpb259LnRhci54egogU291cmNlMzAxOiBrZXJuZWwta2FiaS1kdy0le2th Yml2ZXJzaW9ufS50YXIueHoKIAotJWlmIDAle2luY2x1ZGVfcnR9Ci0laWYgMCV7aW5jbHVkZV9y aGVsfQorJWlmIDAlez9pbmNsdWRlX3J0fQorJWlmIDAlez9pbmNsdWRlX3JoZWx9CiBTb3VyY2U0 NzQ6ICV7bmFtZX0tYWFyY2g2NC1ydC1yaGVsLmNvbmZpZwogU291cmNlNDc1OiAle25hbWV9LWFh cmNoNjQtcnQtZGVidWctcmhlbC5jb25maWcKIFNvdXJjZTQ3NjogJXtuYW1lfS1hYXJjaDY0LXJ0 LTY0ay1yaGVsLmNvbmZpZwpAQCAtMTE2OSw3ICsxMTYzLDcgQEAgU291cmNlNDc3OiAle25hbWV9 LWFhcmNoNjQtcnQtNjRrLWRlYnVnLXJoZWwuY29uZmlnCiBTb3VyY2U0Nzg6ICV7bmFtZX0teDg2 XzY0LXJ0LXJoZWwuY29uZmlnCiBTb3VyY2U0Nzk6ICV7bmFtZX0teDg2XzY0LXJ0LWRlYnVnLXJo ZWwuY29uZmlnCiAlZW5kaWYKLSVpZiAwJXtpbmNsdWRlX2ZlZG9yYX0KKyVpZiAwJXs/aW5jbHVk ZV9mZWRvcmF9CiBTb3VyY2U0ODA6ICV7bmFtZX0tYWFyY2g2NC1ydC1mZWRvcmEuY29uZmlnCiBT b3VyY2U0ODE6ICV7bmFtZX0tYWFyY2g2NC1ydC1kZWJ1Zy1mZWRvcmEuY29uZmlnCiBTb3VyY2U0 ODI6ICV7bmFtZX0tYWFyY2g2NC1ydC02NGstZmVkb3JhLmNvbmZpZwpAQCAtMTE4MSw3ICsxMTc1 LDcgQEAgU291cmNlNDg3OiAle25hbWV9LXJpc2N2NjQtcnQtZGVidWctZmVkb3JhLmNvbmZpZwog JWVuZGlmCiAlZW5kaWYKIAotJWlmICV7aW5jbHVkZV9hdXRvbW90aXZlfQorJWlmIDAlez9pbmNs dWRlX2F1dG9tb3RpdmV9CiAlaWYgJXt3aXRoX2F1dG9tb3RpdmVfYnVpbGR9CiBTb3VyY2U0ODg6 ICV7bmFtZX0tYWFyY2g2NC1yaGVsLmNvbmZpZwogU291cmNlNDg5OiAle25hbWV9LWFhcmNoNjQt ZGVidWctcmhlbC5jb25maWcKQEAgLTEzMjAsNyArMTMxNCw3IEBAIEl0IHByb3ZpZGVzIHRoZSBr ZXJuZWwgc291cmNlIGZpbGVzIGNvbW1vbiB0byBhbGwgYnVpbGRzLgogCiAlaWYgJXt3aXRoX3Bl cmZ9CiAlcGFja2FnZSAtbiBwZXJmCi0laWYgMCV7Z2VtaW5pfQorJWlmIDAlez9nZW1pbml9CiBF cG9jaDogJXtnZW1pbml9CiAlZW5kaWYKIFN1bW1hcnk6IFBlcmZvcm1hbmNlIG1vbml0b3Jpbmcg Zm9yIHRoZSBMaW51eCBrZXJuZWwKQEAgLTEzMzAsNyArMTMyNCw3IEBAIFRoaXMgcGFja2FnZSBj b250YWlucyB0aGUgcGVyZiB0b29sLCB3aGljaCBlbmFibGVzIHBlcmZvcm1hbmNlIG1vbml0b3Jp bmcKIG9mIHRoZSBMaW51eCBrZXJuZWwuCiAKICVwYWNrYWdlIC1uIHBlcmYtZGVidWdpbmZvCi0l aWYgMCV7Z2VtaW5pfQorJWlmIDAlez9nZW1pbml9CiBFcG9jaDogJXtnZW1pbml9CiAlZW5kaWYK IFN1bW1hcnk6IERlYnVnIGluZm9ybWF0aW9uIGZvciBwYWNrYWdlIHBlcmYKQEAgLTEzNDYsNyAr MTM0MCw3IEBAIFRoaXMgcGFja2FnZSBwcm92aWRlcyBkZWJ1ZyBpbmZvcm1hdGlvbiBmb3IgdGhl IHBlcmYgcGFja2FnZS4KICV7ZXhwYW5kOiUlZ2xvYmFsIF9maW5kX2RlYnVnaW5mb19vcHRzICV7 P19maW5kX2RlYnVnaW5mb19vcHRzfSAtcCAnLiolJXtfYmluZGlyfS9wZXJmKFwuZGVidWcpP3wu KiUle19saWJleGVjZGlyfS9wZXJmLWNvcmUvLip8LiolJXtfbGliZGlyfS9saWJwZXJmLWp2bXRp LnNvKFwuZGVidWcpP3xYWFgnIC1vIHBlcmYtZGVidWdpbmZvLmxpc3R9CiAKICVwYWNrYWdlIC1u IHB5dGhvbjMtcGVyZgotJWlmIDAle2dlbWluaX0KKyVpZiAwJXs/Z2VtaW5pfQogRXBvY2g6ICV7 Z2VtaW5pfQogJWVuZGlmCiBTdW1tYXJ5OiBQeXRob24gYmluZGluZ3MgZm9yIGFwcHMgd2hpY2gg d2lsbCBtYW5pcHVsYXRlIHBlcmYgZXZlbnRzCkBAIC0xMzU2LDcgKzEzNTAsNyBAQCB3cml0dGVu IGluIHRoZSBQeXRob24gcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UgdG8gdXNlIHRoZSBpbnRlcmZhY2UK IHRvIG1hbmlwdWxhdGUgcGVyZiBldmVudHMuCiAKICVwYWNrYWdlIC1uIHB5dGhvbjMtcGVyZi1k ZWJ1Z2luZm8KLSVpZiAwJXtnZW1pbml9CislaWYgMCV7P2dlbWluaX0KIEVwb2NoOiAle2dlbWlu aX0KICVlbmRpZgogU3VtbWFyeTogRGVidWcgaW5mb3JtYXRpb24gZm9yIHBhY2thZ2UgcGVyZiBw eXRob24gYmluZGluZ3MKQEAgLTE0MTMsNyArMTQwNyw2IEBAIE9ic29sZXRlczogY3B1ZnJlcXV0 aWxzIDwgMTowMDktMC42LnAxCiBPYnNvbGV0ZXM6IGNwdXNwZWVkIDwgMToxLjUtMTYKIFJlcXVp cmVzOiAle25hbWV9LXRvb2xzLWxpYnMgPSAle3NwZWNycG12ZXJzaW9ufS0le3JlbGVhc2V9CiAl ZW5kaWYKLSVkZWZpbmUgX19yZXF1aXJlc19leGNsdWRlIF4le19iaW5kaXJ9L3B5dGhvbgogJWRl c2NyaXB0aW9uIC1uICV7bmFtZX0tdG9vbHMKIFRoaXMgcGFja2FnZSBjb250YWlucyB0aGUgdG9v bHMvIGRpcmVjdG9yeSBmcm9tIHRoZSBrZXJuZWwgc291cmNlCiBhbmQgdGhlIHN1cHBvcnRpbmcg ZG9jdW1lbnRhdGlvbi4KQEAgLTE0NTksNyArMTQ1Miw3IEBAIHNoaXBwZWQgYXMgcGFydCBvZiB0 aGUga2VybmVsIHRvb2xzIGluY2x1ZGluZyB5bmwuCiAlZW5kaWYKIAogJXBhY2thZ2UgLW4gcnRs YQotJWlmIDAle2dlbWluaX0KKyVpZiAwJXs/Z2VtaW5pfQogRXBvY2g6ICV7Z2VtaW5pfQogJWVu ZGlmCiBTdW1tYXJ5OiBSZWFsLVRpbWUgTGludXggQW5hbHlzaXMgdG9vbHMKQEAgLTE0NzcsNyAr MTQ3MCw3IEBAIGFib3V0IHRoZSBwcm9wZXJ0aWVzIGFuZCByb290IGNhdXNlcyBvZiB1bmV4cGVj dGVkIHJlc3VsdHMuCiAKICVpZiAle3dpdGhfZGVidWdpbmZvfQogJXBhY2thZ2UgLW4gcnRsYS1k ZWJ1Z2luZm8KLSVpZiAwJXtnZW1pbml9CislaWYgMCV7P2dlbWluaX0KIEVwb2NoOiAle2dlbWlu aX0KICVlbmRpZgogU3VtbWFyeTogRGVidWcgaW5mb3JtYXRpb24gZm9yIHBhY2thZ2UgcnRsYQpA QCAtMTQ5NCw3ICsxNDg3LDcgQEAgVGhpcyBwYWNrYWdlIHByb3ZpZGVzIGRlYnVnIGluZm9ybWF0 aW9uIGZvciB0aGUgcnRsYSBwYWNrYWdlLgogJWVuZGlmCiAKICVwYWNrYWdlIC1uIHJ2Ci0laWYg MCV7Z2VtaW5pfQorJWlmIDAlez9nZW1pbml9CiBFcG9jaDogJXtnZW1pbml9CiAlZW5kaWYKIFN1 bW1hcnk6IFJWOiBSdW50aW1lIFZlcmlmaWNhdGlvbgpAQCAtMTUwOCw3ICsxNTAxLDcgQEAgdG8g YW5hbHl6ZSB0aGUgbG9naWNhbCBhbmQgdGltaW5nIGJlaGF2aW9yIG9mIExpbnV4LgogCiAlaWYg JXt3aXRoX2RlYnVnaW5mb30KICVwYWNrYWdlIC1uIHJ2LWRlYnVnaW5mbwotJWlmIDAle2dlbWlu aX0KKyVpZiAwJXs/Z2VtaW5pfQogRXBvY2g6ICV7Z2VtaW5pfQogJWVuZGlmCiBTdW1tYXJ5OiBE ZWJ1ZyBpbmZvcm1hdGlvbiBmb3IgcGFja2FnZSBydgpAQCAtMTk5Niw3ICsxOTg5LDcgQEAgb24g a2VybmVsIGJ1Z3MsIGFzIHNvbWUgb2YgdGhlc2Ugb3B0aW9ucyBpbXBhY3QgcGVyZm9ybWFuY2Ug bm90aWNhYmx5LgogJWVuZGlmCiAKICVpZiAle3dpdGhfZGVidWd9ICYmICV7d2l0aF9hdXRvbW90 aXZlfSAmJiAhJXt3aXRoX2F1dG9tb3RpdmVfYnVpbGR9Ci0lZGVmaW5lIHZhcmlhbnRfc3VtbWFy eSBUaGUgTGludXggQXV0b21vdGl2ZSBrZXJuZWwgY29tcGlsZWQgd2l0aCBleHRyYSBkZWJ1Z2dp bmcgZW5hYmxlZAorJWRlZmluZSB2YXJpYW50X3N1bW1hcnkgVGhlIExpbnV4IGtlcm5lbCBjb21w aWxlZCBmb3IgQXV0b21vdGl2ZSB1c2Ugd2l0aCBQUkVFTVBUX1JUIGFuZCBleHRyYSBkZWJ1Z2dp bmcgZW5hYmxlZAogJWtlcm5lbF92YXJpYW50X3BhY2thZ2UgYXV0b21vdGl2ZS1kZWJ1ZwogJWRl c2NyaXB0aW9uIGF1dG9tb3RpdmUtZGVidWctY29yZQogVGhlIGtlcm5lbCBwYWNrYWdlIGNvbnRh aW5zIHRoZSBMaW51eCBrZXJuZWwgKHZtbGludXopLCB0aGUgY29yZSBvZiBhbnkKQEAgLTIwMTAs NyArMjAwMyw3IEBAIG9uIGtlcm5lbCBidWdzLCBhcyBzb21lIG9mIHRoZXNlIG9wdGlvbnMgaW1w YWN0IHBlcmZvcm1hbmNlIG5vdGljYWJseS4KICVlbmRpZgogCiAlaWYgJXt3aXRoX2F1dG9tb3Rp dmVfYmFzZX0KLSVkZWZpbmUgdmFyaWFudF9zdW1tYXJ5IFRoZSBMaW51eCBrZXJuZWwgY29tcGls ZWQgd2l0aCBQUkVFTVBUX1JUIGVuYWJsZWQKKyVkZWZpbmUgdmFyaWFudF9zdW1tYXJ5IFRoZSBM aW51eCBrZXJuZWwgY29tcGlsZWQgZm9yIEF1dG9tb3RpdmUgdXNlIHdpdGggUFJFRU1QVF9SVCBl bmFibGVkCiAla2VybmVsX3ZhcmlhbnRfcGFja2FnZSBhdXRvbW90aXZlCiAlZGVzY3JpcHRpb24g YXV0b21vdGl2ZS1jb3JlCiBUaGlzIHBhY2thZ2UgaW5jbHVkZXMgYSB2ZXJzaW9uIG9mIHRoZSBM aW51eCBrZXJuZWwgY29tcGlsZWQgd2l0aCB0aGUKQEAgLTIwMTgsNiArMjAxMSw3IEBAIFBSRUVN UFRfUlQgcmVhbC10aW1lIHByZWVtcHRpb24gc3VwcG9ydCwgdGFyZ2V0ZWQgZm9yIEF1dG9tb3Rp dmUgcGxhdGZvcm1zCiAlZW5kaWYKIAogJWlmICV7d2l0aF9zdG9ja30gJiYgJXt3aXRoX2RlYnVn fQorJWRlZmluZSB2YXJpYW50X3N1bW1hcnkgVGhlIExpbnV4IGtlcm5lbCBjb21waWxlZCB3aXRo IGV4dHJhIGRlYnVnZ2luZyBlbmFibGVkCiAlaWYgISV7ZGVidWdidWlsZHNlbmFibGVkfQogJWtl cm5lbF92YXJpYW50X3BhY2thZ2UgLW0gZGVidWcKICVlbHNlCkBAIC0yMTI2LDcgKzIxMjAsNyBA QCBQcmVidWlsdCBkZWZhdWx0IGtlcm5lbCBpbWFnZSB3aXRoIGF1dG8gRFRCIHNlbGVjdGlvbiBm b3IgQVJNNjQgVUVGSSBkZXZpY2VzLgogIyBkbyBhIGZldyBzYW5pdHktY2hlY2tzIGZvciAtLXdp dGggKm9ubHkgYnVpbGRzCiAlaWYgJXt3aXRoX2Jhc2Vvbmx5fQogJWlmICEle3dpdGhfc3RvY2t9 Ci0le2xvZ19tc2cgIkNhbm5vdCBidWlsZCAtLXdpdGggYmFzZW9ubHksIHN0b2NrIGJ1aWxkIGlz IGRpc2FibGVkIn0KKyV7bG9nX21zZyAiQ2Fubm90IGJ1aWxkIHdpdGggYmFzZW9ubHksIHN0b2Nr IGJ1aWxkIGlzIGRpc2FibGVkIn0KIGV4aXQgMQogJWVuZGlmCiAlZW5kaWYKQEAgLTI1NTAsNyAr MjU0NCw3IEBAIEJ1aWxkS2VybmVsKCkgewogICAgIG1rZGlyIC1wICRSUE1fQlVJTERfUk9PVCV7 ZGVidWdpbmZvZGlyfS8le2ltYWdlX2luc3RhbGxfcGF0aH0KICVlbmRpZgogCi0laWZhcmNoIGFh cmNoNjQgcmlzY3Y2NAorJWlmYXJjaCAle2R0Yl9hcmNoZXN9CiAgICAgJXtsb2dfbXNnICJCdWls ZCBkdGIga2VybmVsIn0KICAgICBta2RpciAtcCAkUlBNX0JVSUxEX1JPT1QvJXtpbWFnZV9pbnN0 YWxsX3BhdGh9L2R0Yi0kS2VybmVsVmVyCiAgICAgJXttYWtlfSBBUkNIPSRBcmNoIGR0YnMgSU5T VEFMTF9EVEJTX1BBVEg9JFJQTV9CVUlMRF9ST09ULyV7aW1hZ2VfaW5zdGFsbF9wYXRofS9kdGIt JEtlcm5lbFZlcgpAQCAtNDUyOSwxMyArNDUyMywxMSBAQCBmaVwKICVpZiAle3dpdGhfcmVhbHRp bWVfYXJtNjRfNjRrX2Jhc2V9CiAla2VybmVsX3ZhcmlhbnRfcHJldW4gLXYgcnQtNjRrCiAla2Vy bmVsX3ZhcmlhbnRfcG9zdCAtdiBydC02NGsKLSVrZXJuZWxfa3ZtX3Bvc3QgcnQtNjRrCiAlZW5k aWYKIAogJWlmICV7d2l0aF9kZWJ1Z30gJiYgJXt3aXRoX3JlYWx0aW1lX2FybTY0XzY0a30KICVr ZXJuZWxfdmFyaWFudF9wcmV1biAtdiBydC02NGstZGVidWcKICVrZXJuZWxfdmFyaWFudF9wb3N0 IC12IHJ0LTY0ay1kZWJ1ZwotJWtlcm5lbF9rdm1fcG9zdCBydC02NGstZGVidWcKICVlbmRpZgog CiAlaWYgJXt3aXRoX2F1dG9tb3RpdmV9ICYmICV7d2l0aF9kZWJ1Z30gJiYgISV7d2l0aF9hdXRv bW90aXZlX2J1aWxkfQpAQCAtNDU2Nyw3ICs0NTU5LDcgQEAgZmlcCiAlZW5kaWYKIAogJWlmICV7 d2l0aF9rYWJpZHdfYmFzZX0KLSVpZmFyY2ggeDg2XzY0IHMzOTB4IHBwYzY0IHBwYzY0bGUgYWFy Y2g2NCByaXNjdjY0CislaWZhcmNoIHg4Nl82NCBzMzkweCBwcGM2NGxlIGFhcmNoNjQgcmlzY3Y2 NAogJWZpbGVzIGtlcm5lbC1rYWJpZHctYmFzZS1pbnRlcm5hbAogJWRlZmF0dHIoLSxyb290LHJv b3QpCiAva2FiaWR3LWJhc2UvJXtfdGFyZ2V0X2NwdX0vKgpAQCAtNDc2OCwxNSArNDc2MCwxMSBA QCBmaVwKIAogIyBlbXB0eSBtZXRhLXBhY2thZ2UKICVpZiAle3dpdGhfc3RvY2tfYmFzZX0KLSVp Zm5hcmNoICVub2J1aWxkYXJjaGVzIG5vYXJjaAorJWlmbmFyY2ggbm9hcmNoICV7bm9idWlsZGFy Y2hlc30KICVmaWxlcwogJWVuZGlmCiAlZW5kaWYKIAotIyBUaGlzIGlzICUle2ltYWdlX2luc3Rh bGxfcGF0aH0gb24gYW4gYXJjaCB3aGVyZSB0aGF0IGluY2x1ZGVzIEVMRiBmaWxlcywKLSMgb3Ig ZW1wdHkgb3RoZXJ3aXNlLgotJWRlZmluZSBlbGZfaW1hZ2VfaW5zdGFsbF9wYXRoICV7P2tlcm5l bF9pbWFnZV9lbGY6JXtpbWFnZV9pbnN0YWxsX3BhdGh9fQotCiAjCiAjIFRoaXMgbWFjcm8gZGVm aW5lcyB0aGUgJSVmaWxlcyBzZWN0aW9ucyBmb3IgYSBrZXJuZWwgcGFja2FnZQogIyBhbmQgaXRz IGRldmVsIGFuZCBkZWJ1Z2luZm8gcGFja2FnZXMuCkBAIC00ODA5LDcgKzQ3OTcsNyBAQCBmaVwK ICVnaG9zdCAvJXtpbWFnZV9pbnN0YWxsX3BhdGh9LyV7Py1rOiV7LWsqfX0leyE/LWs6dm1saW51 en0tJXtLVkVSUkVMfSV7PzM6KyV7M319XAogL2xpYi9tb2R1bGVzLyV7S1ZFUlJFTH0lez8zOisl ezN9fS8udm1saW51ei5obWFjIFwKICVnaG9zdCAvJXtpbWFnZV9pbnN0YWxsX3BhdGh9Ly52bWxp bnV6LSV7S1ZFUlJFTH0lez8zOislezN9fS5obWFjIFwKLSVpZmFyY2ggYWFyY2g2NCByaXNjdjY0 XAorJWlmYXJjaCAle2R0Yl9hcmNoZXN9XAogL2xpYi9tb2R1bGVzLyV7S1ZFUlJFTH0lez8zOisl ezN9fS9kdGIgXAogJWdob3N0IC8le2ltYWdlX2luc3RhbGxfcGF0aH0vZHRiLSV7S1ZFUlJFTH0l ez8zOislezN9fSBcCiAlZW5kaWZcCkBAIC00ODk5LDcgKzQ4ODcsNyBAQCBmaVwKICVnaG9zdCAl YXR0cigwNjQ0LCByb290LCByb290KSAvYm9vdC9zeW12ZXJzLSV7S1ZFUlJFTH0lez8zOislezN9 fS4lY29tcGV4dFwKICVnaG9zdCAlYXR0cigwNzU1LCByb290LCByb290KSAvJXtpbWFnZV9pbnN0 YWxsX3BhdGh9LyV7Py1rOiV7LWsqfX0leyE/LWs6dm1saW51en0tJXtLVkVSUkVMfSV7PzM6KyV7 M319XAogJWdob3N0ICVhdHRyKDA2NDQsIHJvb3QsIHJvb3QpIC8le2ltYWdlX2luc3RhbGxfcGF0 aH0vLiV7Py1rOiV7LWsqfX0leyE/LWs6dm1saW51en0tJXtLVkVSUkVMfSV7PzM6KyV7M319Lmht YWNcCi0laWZhcmNoIGFhcmNoNjQgcmlzY3Y2NFwKKyVpZmFyY2ggJXtkdGJfYXJjaGVzfVwKIC9s aWIvbW9kdWxlcy8le0tWRVJSRUx9JXs/MzorJXszfX0vZHRiIFwKICVnaG9zdCAvJXtpbWFnZV9p bnN0YWxsX3BhdGh9L2R0Yi0le0tWRVJSRUx9JXs/MzorJXszfX0gXAogJWVuZGlmXApAQCAtNDkw OCw3ICs0ODk2LDcgQEAgZmlcCiAle2V4cGFuZDolJWZpbGVzICV7M319XAogJWVuZGlmXAogJWlm ICV7d2l0aF9nY292fVwKLSVpZm5hcmNoICVub2J1aWxkYXJjaGVzIG5vYXJjaFwKKyVpZm5hcmNo IG5vYXJjaCAle25vYnVpbGRhcmNoZXN9XAogJXtleHBhbmQ6JSVmaWxlcyAtZiBrZXJuZWwtJXs/ MzolezN9LX1nY292Lmxpc3QgJXs/MzolezN9LX1nY292fVwKICVlbmRpZlwKICVlbmRpZlwKQEAg LTQ5NzYsMTA5ICs0OTY0LDUwIEBAIGZpXAogIwogIwogJWNoYW5nZWxvZwotKiBNb24gQXVnIDE3 IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4g WzcuMi4wLTYxXQorKiBUdWUgQXVnIDE4IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwt dGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMy4wLTAucmMwLjBmMjNkNTZmMTdmZC4zXQogLSBh dXRvbW90aXZlOiBlbmFibGUgSFVHRVRMQkZTIHRvIHdvcmthcm91bmQgYnVpbGQgZXJyb3IgKFNj b3R0IFdlYXZlcikKIAotKiBNb24gQXVnIDE3IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJu ZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTYwXQorKiBUdWUgQXVnIDE4IDIwMjYg RmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMy4w LTAucmMwLjBmMjNkNTZmMTdmZC4yXQorLSBUdXJuIG9uIENPTkZJR19CTEtfSU5MSU5FX0VOQ1JZ UFRJT04gZm9yIFJIRUwgcGVuZGluZyB0b28gKEp1c3RpbiBNLiBGb3JiZXMpCistIFR1cm4gb24g QkxLX0lOTElORV9FTkNSWVBUSU9OX0ZBTExCQUNLIGZvciBtaXNtYXRjaCAoSnVzdGluIE0uIEZv cmJlcykKKy0gUmVzZXQgTWFrZWZpbGUucmhlbHZlciBmb3IgdGhlIDcuMyBjeWNsZSAoSnVzdGlu IE0uIEZvcmJlcykKKy0gTWVyZ2UgY29uZmlncyBpbnRvIGNvbW1vbiBmb3IgNy4yIChKdXN0aW4g TS4gRm9yYmVzKQorLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIFJUQ19EUlZf UEwwMzEgKEVyaWMgQ2hhbnVkZXQpCistIHJlZGhhdDogbmFtZSB0aGUgZHRiIGFuZCBVS0kgYXJj aCBsaXN0cyAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogdXNlIG9uZSBzcGVsbGluZyBmb3IgdGhl IG5vYnVpbGRhcmNoZXMgZmlsZXMgZ3VhcmQgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGRyb3Ag c3RhbGUgcHBjNjQgZnJvbSB0aGUga2FiaWR3LWJhc2UgYXJjaCBsaXN0IChKYW4gU3RhbmNlaykK Ky0gcmVkaGF0OiBkb2N1bWVudCB0aGUga2FiaWNoayBmb3JjZS1vZmYgYXMgYSBzZWFzb25hbCB0 b2dnbGUgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IHVzZSBvbmUgc3BlbGxpbmcgZm9yIHRoZSBp bmNsdWRlIGFuZCBnZW1pbmkgY29uZGl0aW9uYWxzIChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBy ZW1vdmUgdW51c2VkIGVsZl9pbWFnZV9pbnN0YWxsX3BhdGggYW5kIGR1cGxpY2F0ZSBkZWZpbmVz IChKYW4gU3RhbmNlaykKKy0gcmVkaGF0OiBkcm9wIHRoZSBkZWFkIGtlcm5lbC10b29scyBfX3Jl cXVpcmVzX2V4Y2x1ZGUgcHl0aG9uIGZpbHRlciAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZHJv cCB0aGUgRmVkb3JhIDQxIGNyb3NzLWJ1aWxkIGdkYi1pbmRleCB3b3JrYXJvdW5kIChKYW4gU3Rh bmNlaykKKy0gcmVkaGF0OiBkcm9wIHN0YWxlIGJ1aWxkIHN3aXRjaGVzIGZyb20gZGlzdC1wZXJm IGFuZCBkaXN0LXJwbS1iYXNlb25seSAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZ2l2ZSBrZXJu ZWwtYXV0b21vdGl2ZSBpdHMgb3duIHN1bW1hcnkgKEphbiBTdGFuY2VrKQorLSByZWRoYXQ6IGRy b3AgbGVmdG92ZXIga2VybmVsX2t2bV9wb3N0IGNhbGxzIGZvciBydC02NGsgKEphbiBTdGFuY2Vr KQorLSByZWRoYXQ6IHJlc3RvcmUgbWlzc2luZyBzdW1tYXJ5IG9mIHRoZSBrZXJuZWwtZGVidWcg dmFyaWFudCAoSmFuIFN0YW5jZWspCistIHJlZGhhdDogZml4IHBhcnNlIGVycm9yIGluIGJhc2Vv bmx5IHNhbml0eSBjaGVjayBtZXNzYWdlIChKYW4gU3RhbmNlaykKIC0gZHJhY3V0LXZpcnQuY29u ZjogY2hhbmdlIHN5c3RlbWQtcGNycGhhc2UgdG8gc3lzdGVtZC1wY3JleHRlbmQgKFZpdGFseSBL dXpuZXRzb3YpCiAtIHJlZGhhdC9rZXJuZWwuc3BlYy50ZW1wbGF0ZTogU3dpdGNoIFVLSSBhZGRv bnMgdG8gdXNpbmcgVUtJIGNlcnQgKFZpdGFseSBLdXpuZXRzb3YpCi0tIExpbnV4IHY3LjIuMAot Ci0qIFN1biBBdWcgMTYgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9y YXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzcuM2ViNDA3NzFjMDBhLjU5XQotLSBMaW51eCB2Ny4y LjAtMC5yYzcuM2ViNDA3NzFjMDBhCi0KLSogU2F0IEF1ZyAxNSAyMDI2IEZlZG9yYSBLZXJuZWwg VGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNy4xNWVmMmY3 OGM0OWQuNThdCi0tIExpbnV4IHY3LjIuMC0wLnJjNy4xNWVmMmY3OGM0OWQKLQotKiBGcmkgQXVn IDE0IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9y Zz4gWzcuMi4wLTAucmM3LjJmMWJhZjFmYzg5Mi41N10KIC0gcmVkaGF0L2NvbmZpZ3M6IGF1dG9t b3RpdmU6IGRpc2FibGUgQ09ORklHX01EIChKYXJlZCBLYW5nYXMpCi0tIExpbnV4IHY3LjIuMC0w LnJjNy4yZjFiYWYxZmM4OTIKLQotKiBUaHUgQXVnIDEzIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFt IDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM3LjNkNmQ4MTc2MjJi MC41Nl0KLS0gTGludXggdjcuMi4wLTAucmM3LjNkNmQ4MTc2MjJiMAotCi0qIFdlZCBBdWcgMTIg MjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBb Ny4yLjAtMC5yYzcuZjViYmJmZWM1OWI0LjU1XQotLSBMaW51eCB2Ny4yLjAtMC5yYzcuZjViYmJm ZWM1OWI0Ci0KLSogVHVlIEF1ZyAxMSAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRl YW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNy5kNTg3NzJkODUyMGMuNTRdCiAtIENs ZWFuIHVwIHVubmVjZXNzYXJ5IHBlbmRpbmcgZW50cmllcyAoSnVzdGluIE0uIEZvcmJlcykKIC0g VHVybiBvbiBDT05GSUdfQ1JZUFRPX01MRFNBIGZvciBGZWRvcmEgKEp1c3RpbiBNLiBGb3JiZXMp Ci0tIExpbnV4IHY3LjIuMC0wLnJjNy5kNTg3NzJkODUyMGMKLQotKiBNb24gQXVnIDEwIDIwMjYg RmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4w LTAucmM3LjUzXQotLSBMaW51eCB2Ny4yLjAtMC5yYzcKLQotKiBTdW4gQXVnIDA5IDIwMjYgRmVk b3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAu cmM2LjA2Y2Y2MTg5OWQ2NC41Ml0KIC0gRml4IHVwIG1pc21hdGNoIGZvciByaGVsIGF1dG9tb3Rp dmUgKEp1c3RpbiBNLiBGb3JiZXMpCiAtIEZpeCB1cCBhIGNvbmZpZyBtaXNtYXRjaCBpbiBwZW5k aW5nIChKdXN0aW4gTS4gRm9yYmVzKQotLSBMaW51eCB2Ny4yLjAtMC5yYzYuMDZjZjYxODk5ZDY0 Ci0KLSogRnJpIEF1ZyAwNyAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVk b3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNi5mOWEyMzk0YTIzNDguNTFdCi0tIExpbnV4IHY3 LjIuMC0wLnJjNi5mOWEyMzk0YTIzNDgKLQotKiBUaHUgQXVnIDA2IDIwMjYgRmVkb3JhIEtlcm5l bCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM2LjBkODM5 NTcwNzY1MS41MF0KLS0gTGludXggdjcuMi4wLTAucmM2LjBkODM5NTcwNzY1MQotCi0qIFdlZCBB dWcgMDUgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qu b3JnPiBbNy4yLjAtMC5yYzYuYzIxYmI0MTkzODY4LjQ5XQogLSByZWRoYXQvY29uZmlnczogYXV0 b21vdGl2ZTogZGVidWc6IGVuYWJsZSBLQVNBTl9JTkxJTkUgKEphcmVkIEthbmdhcykKLS0gTGlu dXggdjcuMi4wLTAucmM2LmMyMWJiNDE5Mzg2OAotCi0qIFR1ZSBBdWcgMDQgMjAyNiBGZWRvcmEg S2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzYu ODQ4YWNjOGZmZTFiLjQ4XQogLSBSZW1vdmUgc3RhbGUgY29uZmlnIGl0ZW1zIGZyb20gNy4xIChK dXN0aW4gTS4gRm9yYmVzKQotLSBMaW51eCB2Ny4yLjAtMC5yYzYuODQ4YWNjOGZmZTFiCi0KLSog TW9uIEF1ZyAwMyAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJv amVjdC5vcmc+IFs3LjIuMC0wLnJjNi40N10KLS0gTGludXggdjcuMi4wLTAucmM2Ci0KLSogU3Vu IEF1ZyAwMiAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVj dC5vcmc+IFs3LjIuMC0wLnJjNS4yZDIzMzhjOTNkYTcuNDZdCi0tIExpbnV4IHY3LjIuMC0wLnJj NS4yZDIzMzhjOTNkYTcKLQotKiBTYXQgQXVnIDAxIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxr ZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM1LjAyZGM2OTlmODNkMC40 NV0KIC0gTGFzdCBjb25maWdzIGZvciA3LjIgRmVkb3JhIChKdXN0aW4gTS4gRm9yYmVzKQotLSBM aW51eCB2Ny4yLjAtMC5yYzUuMDJkYzY5OWY4M2QwCi0KLSogRnJpIEp1bCAzMSAyMDI2IEZlZG9y YSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJj NS44YmEwOThlNmI2ZmYuNDRdCiAtIHJlZGhhdDogRGlzYWJsZSB0aGUgQ1JZUFRPX0xJQl9BRVND RkIgY29uZmlnIHN3aXRjaCAoVGhvbWFzIEh1dGgpCi0tIExpbnV4IHY3LjIuMC0wLnJjNS44YmEw OThlNmI2ZmYKLQotKiBUaHUgSnVsIDMwIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwt dGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM1LjExMDI4YWI2Mjg5OS40M10KIC0g cmVkaGF0L2NvbmZpZ3M6IGRvIG5vdCBlbmFibGUgSVBRX0dDQ185NjUwIChFcmljIENoYW51ZGV0 KQogLSByZWRoYXQvY29uZmlnczogZG8gbm90IGVuYWJsZSBDTEtfWDFQNDIxMDBfKiAoRXJpYyBD aGFudWRldCkKLS0gTGludXggdjcuMi4wLTAucmM1LjExMDI4YWI2Mjg5OQotCi0qIFdlZCBKdWwg MjkgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3Jn PiBbNy4yLjAtMC5yYzUuZmMwMmFjZjZhYzBjLjQyXQotLSBMaW51eCB2Ny4yLjAtMC5yYzUuZmMw MmFjZjZhYzBjCi0KLSogVHVlIEp1bCAyOCAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVs LXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNS42MmNjOTAyNDE1NDguNDFdCiAt IHJlZGhhdDogYWx3YXlzIG92ZXJ3cml0ZSBzcGVjIHRlbXBsYXRlIGNvcHkgKEphbiBTdGFuY2Vr KQogLSBnaXRsYWItY2k6IGVuYWJsZSBFTE4gY2xhbmcgYnVpbGRzIChTY290dCBXZWF2ZXIpCiAt IFR1cm4gb24gQ09ORklHX1JFR01BUCBmb3IgUkhFTCBzMzkweCAoSnVzdGluIE0uIEZvcmJlcykK IC0gVHVybiBBQ1BJX1BMQVRGT1JNX1BST0ZJTEUgdG8gYnVpbHQtaW4gZm9yIFJIRUwgeDg2IChK dXN0aW4gTS4gRm9yYmVzKQogLSBUdXJuIG9uIENPTkZJR19SRVNDVFJMX0ZTIGZvciBSSEVMIHg4 NiAoSnVzdGluIE0uIEZvcmJlcykKIC0gcmVkaGF0OiBjb25maWdzOiByaGVsOiBFbmFibGUgQU1E IElTUDQgTUlQSSBjYW1lcmEgc29sdXRpb24gKEthdGUgSHN1YW4pCi0tIExpbnV4IHY3LjIuMC0w LnJjNS42MmNjOTAyNDE1NDgKLQotKiBNb24gSnVsIDI3IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFt IDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM1LjQwXQotLSBMaW51 eCB2Ny4yLjAtMC5yYzUKLQotKiBTdW4gSnVsIDI2IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxr ZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM0LjNkYWIxMzlkNDc5NS4z OV0KLS0gTGludXggdjcuMi4wLTAucmM0LjNkYWIxMzlkNDc5NQotCi0qIFNhdCBKdWwgMjUgMjAy NiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4y LjAtMC5yYzQuMGNlMzc3NDVkNGJmLjM4XQotLSBMaW51eCB2Ny4yLjAtMC5yYzQuMGNlMzc3NDVk NGJmCi0KLSogVGh1IEp1bCAyMyAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1A ZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNC40NTM5OTQ0ZTUxNTEuMzddCiAtIGZlZG9y YTogdXBkYXRlcyBmb3IgdGhlIDcuMiBtZXJnZSB3aW5kb3cgKFBldGVyIFJvYmluc29uKQotLSBM aW51eCB2Ny4yLjAtMC5yYzQuNDUzOTk0NGU1MTUxCi0KLSogV2VkIEp1bCAyMiAyMDI2IEZlZG9y YSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJj NC4yNDg5NTFkZGMxNGQuMzZdCiAtIHJlZGhhdC9jb25maWdzOiBFbmFibGUgZGVhZGxpbmUgYW5k IHN0YWxsIG1vbml0b3JzIChHYWJyaWVsZSBNb25hY28pCi0tIExpbnV4IHY3LjIuMC0wLnJjNC4y NDg5NTFkZGMxNGQKLQotKiBUdWUgSnVsIDIxIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJu ZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmM0LmI5NWYwM2YwNGQ0Ny4zNV0K IC0gcmVkaGF0L2tlcm5lbC5zcGVjOiBmaXggYnVpbGQgZm9yIHJ0b25seSAoSmFuIFN0YW5jZWsp Ci0KLSogVHVlIEp1bCAyMSAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVk b3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjNC5iOTVmMDNmMDRkNDcuMzRdCiAtIHJlZGhhdDog ZmlsdGVybW9kcy5weTogZG9jdW1lbnQgZXhhY3RfcGtnIGFuZCBpZ25vcmVfZGVwcyBydWxlIGF0 dHJpYnV0ZXMgKEphbiBTdGFuY2VrKQogLSByZWRoYXQ6IGZpbHRlcm1vZHMucHk6IG1ha2UgcGlj a19iZXN0KCkgZGV0ZXJtaW5pc3RpYyBvbiB0aWVkIHBhY2thZ2VzIChKYW4gU3RhbmNlaykKIC0g cmVkaGF0OiBmaWx0ZXJtb2RzLnB5OiBhZGQgaWdub3JlX2RlcHMgcnVsZSBvcHRpb24gKEphbiBT dGFuY2VrKQpAQCAtNTA5NCwxMzYgKzUwMjMsMzQgQEAgZmlcCiAtIHJlZGhhdDogZmlsdGVybW9k cy5weTogZml4IGRvX3JwbV9tYXBwaW5nX3Rlc3QoKSAoSmFuIFN0YW5jZWspCiAtIHJlZGhhdDog ZmlsdGVybW9kcy5weTogc2ltcGxpZnkgYWxnb3JpdGhtIChKYW4gU3RhbmNlaykKIC0gcmVkaGF0 OiBmaWx0ZXJtb2RzLnB5OiBhZGQgbmV3IHRlc3RzIChKYW4gU3RhbmNlaykKLS0gTGludXggdjcu Mi4wLTAucmM0LmI5NWYwM2YwNGQ0NwotCi0qIE1vbiBKdWwgMjAgMjAyNiBGZWRvcmEgS2VybmVs IFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzQuMzNdCi0t IExpbnV4IHY3LjIuMC0wLnJjNAotCi0qIFN1biBKdWwgMTkgMjAyNiBGZWRvcmEgS2VybmVsIFRl YW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzMuYzY4NTllZWQ3 NTVkLjMyXQotLSBMaW51eCB2Ny4yLjAtMC5yYzMuYzY4NTllZWQ3NTVkCi0KLSogU2F0IEp1bCAx OCAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+ IFs3LjIuMC0wLnJjMy4xMjI5ZTJlNTdhNWMuMzFdCi0tIExpbnV4IHY3LjIuMC0wLnJjMy4xMjI5 ZTJlNTdhNWMKLQotKiBGcmkgSnVsIDE3IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwt dGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMzLmZjZTJkZmE3NzNjZS4zMF0KLS0g TGludXggdjcuMi4wLTAucmMzLmZjZTJkZmE3NzNjZQotCi0qIFRodSBKdWwgMTYgMjAyNiBGZWRv cmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5y YzMuMzdlMmY4NzhhN2E2LjI5XQogLSByZWRoYXQvY29uZmlnczogZW5hYmxlIFFDUzYxNSBwaW5j dHJsIGFuZCBpbnRlcmNvbm5lY3QgZHJpdmVycyAoV3UgRmFuZykKIC0gcmVkaGF0L2NvbmZpZ3M6 IGF1dG9tb3RpdmU6IGVuYWJsZSBTRU5TT1JTX0lOQTJYWCAoSmFyZWQgS2FuZ2FzKQogLSByZWRo YXQvY29uZmlnczogYXV0b21vdGl2ZTogZW5hYmxlIFBXTV9GU0xfRlRNIGFzIGEgbW9kdWxlIChK YXJlZCBLYW5nYXMpCi0tIExpbnV4IHY3LjIuMC0wLnJjMy4zN2UyZjg3OGE3YTYKLQotKiBXZWQg SnVsIDE1IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0 Lm9yZz4gWzcuMi4wLTAucmMzLjU4NzE3YjJhMTM2NS4yOF0KIC0gQWRkIGZlZG9yYSBlbnRyeSBp biBwZW5kaW5nIGZvciB3ZWlyZCBtaXNtYXRjaCBpbiBzY3JpcHRzIChKdXN0aW4gTS4gRm9yYmVz KQogLSBGaXggdXAgY29uZmlnIG1pc21hdGNoZXMgKEp1c3RpbiBNLiBGb3JiZXMpCi0tIExpbnV4 IHY3LjIuMC0wLnJjMy41ODcxN2IyYTEzNjUKLQotKiBXZWQgSnVsIDE1IDIwMjYgRmVkb3JhIEtl cm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMzLjNi MDI5YzAzNWIzNC4yN10KIC0gcmVkaGF0L2tlcm5lbC5zcGVjOiBkZXJpdmUgcGVzaWduX25hbWVf MCBmcm9tIHNlY3VyZWJvb3Rfa2V5XzAgKEphbiBTdGFuY2VrKQogLSByZWRoYXQvY29uZmlnczog TW92ZSBJT01NVV9QVF8qIGZyb20gcmhlbC1wZW5kaW5nIHRvIHJoZWwgKEplbm5pZmVyIEJlcnJp bmdlcikKLQotKiBUdWUgSnVsIDE0IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVh bUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMzLjNiMDI5YzAzNWIzNC4yNl0KIC0gcmVk aGF0L2tlcm5lbC5zcGVjOiByZXF1aXJlIGxpYmJhYmVsdHJhY2UyLWRldmVsIChZYWFrb3YgU2Vs a293aXR6KQogLSByZWRoYXQ6IG1vdmUgeW5sdG9vbCBkZWJ1Z2luZm8gdG8ga2VybmVsLXRvb2xz LWRlYnVnaW5mbyAoQXVndXN0byBDYXJpbmdpKQotLSBMaW51eCB2Ny4yLjAtMC5yYzMuM2IwMjlj MDM1YjM0Ci0KLSogTW9uIEp1bCAxMyAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRl YW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMy4yNV0KLS0gTGludXggdjcuMi4wLTAu cmMzCi0KLSogU3VuIEp1bCAxMiAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1A ZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMi40NDY5NmFhM2E0ODkuMjRdCi0tIExpbnV4 IHY3LjIuMC0wLnJjMi40NDY5NmFhM2E0ODkKLQotKiBTYXQgSnVsIDExIDIwMjYgRmVkb3JhIEtl cm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMyLmRk MzIxMGM0N2U4ZC4yM10KIC0gVHVybiBvbiBDT05GSUdfUkVHTUFQIGZvciBSSEVMIHMzOTB4IHBl bmRpbmcgZm9yIG1pc21hdGNoIChKdXN0aW4gTS4gRm9yYmVzKQogLSByZWRoYXQ6IGFkZCBrbWFw LnB5IHRvb2wgYW5kIGtlcm5lbC1rbWFwLWludGVybmFsIHBhY2thZ2UgKFJhZG8gVnJib3Zza3kp Ci0tIExpbnV4IHY3LjIuMC0wLnJjMi5kZDMyMTBjNDdlOGQKLQotKiBUaHUgSnVsIDA5IDIwMjYg RmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4w LTAucmMyLjBlMzViOWI2ZWMwZi4yMl0KIC0gdWtpLXZpcnQ6IEFkZCBmZGlzayB0byB0aGUgaW5p dHJhbWZzIHRvIG1ha2Ugc3lzdGVtZC1yZXBhcnQgZnVuY3Rpb25hbCAoVml0YWx5IEt1em5ldHNv dikKIC0gcmVkaGF0L2NvbmZpZ3M6IEVuYWJsZSBFcHNvbiBSWDgxMTEgUlRDIGRyaXZlciBmb3Ig YXJtL2FhcmNoNjQgYnVpbGRzLiBTaWduZWQtb2ZmLWJ5OiBOaXJtYWxhIERhbHZpIDxuZGFsdmlA cmVkaGF0LmNvbT4gKE5pcm1hbGEgRGFsdmkpCi0KLSogVHVlIEp1bCAwNyAyMDI2IEZlZG9yYSBL ZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMi4w ZTM1YjliNmVjMGYuMjFdCiAtIHJlZGhhdDogc2lnbiBjZW50b3Mga2VybmVsIGFuZCBVS0lzIHdp dGggODAwIGNlcnRzIChKYW4gU3RhbmNlaykKLS0gTGludXggdjcuMi4wLTAucmMyLjBlMzViOWI2 ZWMwZgotCi0qIE1vbiBKdWwgMDYgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFt QGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzIuMjBdCi0tIExpbnV4IHY3LjIuMC0wLnJj MgotCi0qIFN1biBKdWwgMDUgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZl ZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzEuNzQwNGNlNTE2MzcyLjE5XQotLSBMaW51eCB2 Ny4yLjAtMC5yYzEuNzQwNGNlNTE2MzcyCi0KLSogU2F0IEp1bCAwNCAyMDI2IEZlZG9yYSBLZXJu ZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMS4xZTlj ZGMyZWExNWEuMThdCi0tIExpbnV4IHY3LjIuMC0wLnJjMS4xZTljZGMyZWExNWEKLQotKiBGcmkg SnVsIDAzIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0 Lm9yZz4gWzcuMi4wLTAucmMxLmQyYzlhOTkxMzVkYS4xN10KIC0gcmVkaGF0L21vZC1zaWduLnNo OiB1c2UgQ09ORklHX01PRFVMRV9TSUdfSEFTSCAoSmFuIFN0YW5jZWspCiAtIHJlZGhhdC9rZXJu ZWwuc3BlYy50ZW1wbGF0ZTogUGFjayBhIGJpdCBtb3JlIGRlc2NyaXB0aXZlIG5hbWUgZm9yIGV4 dHJhcy8gKFZpdGFseSBLdXpuZXRzb3YpCiAtIHJlZGhhdC9jb25maWdzOiBFbmFibGUgSU9NTVVf REVCVUdfUEFHRUFMTE9DIGFuZCBBTURfSU9NTVVfSU9NTVVGRCAoSmVycnkgU25pdHNlbGFhcikK LS0gTGludXggdjcuMi4wLTAucmMxLmQyYzlhOTkxMzVkYQotCi0qIFRodSBKdWwgMDIgMjAyNiBG ZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAt MC5yYzEuNGE1MGExNDFmMDVhLjE2XQotLSBMaW51eCB2Ny4yLjAtMC5yYzEuNGE1MGExNDFmMDVh Ci0KLSogV2VkIEp1bCAwMSAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVk b3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMS42NjUxNTllMjQ2NzQuMTVdCi0tIExpbnV4IHY3 LjIuMC0wLnJjMS42NjUxNTllMjQ2NzQKLQotKiBTdW4gSnVuIDI4IDIwMjYgRmVkb3JhIEtlcm5l bCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMxLjE0XQot LSBMaW51eCB2Ny4yLjAtMC5yYzEKLQotKiBTdW4gSnVuIDI4IDIwMjYgRmVkb3JhIEtlcm5lbCBU ZWFtIDxrZXJuZWwtdGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMwLjc4MGQ1Njll NmM0Yi4xM10KLS0gTGludXggdjcuMi4wLTAucmMwLjc4MGQ1NjllNmM0YgotCi0qIFNhdCBKdW4g MjcgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3Jn PiBbNy4yLjAtMC5yYzAuNWE2NjkwMGFmYmQ2LjEyXQogLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJs ZSBVU0I0U1RSRUFNIHByb3RvY29sIChEZW5uaXMgQ2hlbikgW1JIRUwtMTg2OTM0XQotLSBMaW51 eCB2Ny4yLjAtMC5yYzAuNWE2NjkwMGFmYmQ2Ci0KLSogRnJpIEp1biAyNiAyMDI2IEZlZG9yYSBL ZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMC40 ZWRjZGVmZDQwODMuMTFdCiAtIEZpeCB1cCBhIG1pc21hdGNoIGZvciBhdXRvbW90aXZlIENPTkZJ R19DTEtfWDFFODAxMDBfR0NDIChKdXN0aW4gTS4gRm9yYmVzKQotLSBMaW51eCB2Ny4yLjAtMC5y YzAuNGVkY2RlZmQ0MDgzCi0KLSogRnJpIEp1biAyNiAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8 a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMC5hYjlkZTk1YzljZjku MTBdCiAtIGZlZG9yYTogYWFyY2g2NDogU2V0IENPTkZJR19EUklWRVJfREVGRVJSRURfUFJPQkVf VElNRU9VVD0tMSAoQWxpIEVyZGluYyBLb3JvZ2x1KQogLSByZWRoYXQ6IGNvbmZpZ3M6IEVuYWJs ZSBBTUQgSVNQNCBNSVBJIGNhbWVyYSBzb2x1dGlvbiAoS2F0ZSBIc3VhbikKIC0gcmVkaGF0OiBj b25maWdzOiBFbmFibGUgSW50ZWwgQ1ZTIChLYXRlIEhzdWFuKQotCi0qIFRodSBKdW4gMjUgMjAy NiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4y LjAtMC5yYzAuYWI5ZGU5NWM5Y2Y5LjldCi0tIFJldmVydCAiSW5wdXQ6IHJtaTQgLSByZW1vdmUg dGhlIG5lZWQgZm9yIGFydGlmaWNpYWwgSVJRIGluIGNhc2Ugb2YgSElEIiAoSnVzdGluIE0uIEZv cmJlcykKLS0gTGludXggdjcuMi4wLTAucmMwLmFiOWRlOTVjOWNmOQotCi0qIFRodSBKdW4gMjUg MjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBb Ny4yLjAtMC5yYzAuODQwZWY2Yzc4ZTZhLjhdCiAtIEluY3JlYXNlIHRoZSBzMzkweCBrZXJuZWwg YmFzZWxpbmUgKEp1c3RpbiBNLiBGb3JiZXMpCiAtIHJlZGhhdC9rc3BkeDogcmVtb3ZlIHJlZHVu ZGFudCBPUiB0ZXJtcyBmcm9tIGpvaW50IGxpY2Vuc2UgZXhwcmVzc2lvbiAoSmFuIFN0YW5jZWsp Ci0KLSogV2VkIEp1biAyNCAyMDI2IEZlZG9yYSBLZXJuZWwgVGVhbSA8a2VybmVsLXRlYW1AZmVk b3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMC44NDBlZjZjNzhlNmEuN10KLS0gTGludXggdjcu Mi4wLTAucmMwLjg0MGVmNmM3OGU2YQotCi0qIFR1ZSBKdW4gMjMgMjAyNiBGZWRvcmEgS2VybmVs IFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3JnPiBbNy4yLjAtMC5yYzAuNTAyZDgw MWYwYWIwLjZdCiAtIHJlZGhhdC9rZXJuZWwuc3BlYzogc2V0IGFsc28gSE9TVF9FWFRSQUNGTEFH UyBmb3IgQlBGIGJvb3RzdHJhcCBidWlsZCAoSmFuIFN0YW5jZWspCiAtIFRyaW0gY2hhbmdlbG9n IGR1cGxpY2F0ZXMgYWZ0ZXIgcmViYXNlIChKdXN0aW4gTS4gRm9yYmVzKQotLSBMaW51eCB2Ny4y LjAtMC5yYzAuNTAyZDgwMWYwYWIwCi0KLSogTW9uIEp1biAyMiAyMDI2IEZlZG9yYSBLZXJuZWwg VGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMC5lZjBjOWY3 NWExOTUuNV0KIC0gcmVkaGF0L2NvbmZpZ3M6IGRvIG5vdCBkaXNhYmxlIFBDSUVQT1JUQlVTIG9u IHBwYzY0bGUgKERhbiBIb3LDoWspCi0tIExpbnV4IHY3LjIuMC0wLnJjMC5lZjBjOWY3NWExOTUK LQotKiBTdW4gSnVuIDIxIDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwtdGVhbUBmZWRv cmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMwLjMyMjAwOGY4N2Y5MS40XQotLSBMaW51eCB2Ny4y LjAtMC5yYzAuMzIyMDA4Zjg3ZjkxCi0KLSogU2F0IEp1biAyMCAyMDI2IEZlZG9yYSBLZXJuZWwg VGVhbSA8a2VybmVsLXRlYW1AZmVkb3JhcHJvamVjdC5vcmc+IFs3LjIuMC0wLnJjMC4xYTM3NDZj Y2JiMGEuM10KLS0gTGludXggdjcuMi4wLTAucmMwLjFhMzc0NmNjYmIwYQotCi0qIEZyaSBKdW4g MTkgMjAyNiBGZWRvcmEgS2VybmVsIFRlYW0gPGtlcm5lbC10ZWFtQGZlZG9yYXByb2plY3Qub3Jn PiBbNy4yLjAtMC5yYzAuOWVjZmIyZjcyODdhLjJdCi0tIExpbnV4IHY3LjIuMC0wLnJjMC45ZWNm YjJmNzI4N2EKLQotKiBUaHUgSnVuIDE4IDIwMjYgRmVkb3JhIEtlcm5lbCBUZWFtIDxrZXJuZWwt dGVhbUBmZWRvcmFwcm9qZWN0Lm9yZz4gWzcuMi4wLTAucmMwLmU3NzE2NzdjOTM3ZC4xXQogLSBS ZXNldCBSSEVMX1JFTEVBU0UgZm9yIHRoZSA3LjIgY3ljbGUgKFNjb3R0IFdlYXZlcikKLS0gUmV2 ZXJ0ICJjcnlwdG86IHJuZyAtIE92ZXJyaWRlIGRyaXZlcnMvY2hhci9yYW5kb20gaW4gRklQUyBt b2RlIiAoUGF0cmljayBUYWxiZXJ0KQotLSBSZXZlcnQgImNyeXB0bzogcm5nIC0gRW5zdXJlIHN0 ZHJuZyBpcyB0ZXN0ZWQgYmVmb3JlIHVzZXItc3BhY2Ugc3RhcnRzIiAoUGF0cmljayBUYWxiZXJ0 KQotLSBSZXZlcnQgImNyeXB0bzogcm5nIC0gRml4IGV4dHJuZyBFRkFVTFQgaGFuZGxpbmciIChQ YXRyaWNrIFRhbGJlcnQpCi0tIFJldmVydCAiQ29ycmVjdCBtYW51YWwgbWVyZ2UgZXJyb3IgaW4g Y3J5cHRvL3JuZy5jIiAoUGF0cmljayBUYWxiZXJ0KQotLSBSZXZlcnQgIkZpeCB1cCByZWJhc2Ug aXNzdWVzIHdpdGggcm5nLmMiIChQYXRyaWNrIFRhbGJlcnQpCi0tIEZpeCB1cCByZWJhc2UgaXNz dWVzIHdpdGggcm5nLmMgKEp1c3RpbiBNLiBGb3JiZXMpCiAtIGZlZG9yYTogY2xlYW51cCB0aGUg Q2FkZW5jZSBVU0Igb3B0aW9ucyAoUGV0ZXIgUm9iaW5zb24pCiAtIENvbnNvbGlkYXRlIGNvbmZp Z3MgdG8gY29tbW9uIGZvciA3LjEgKEp1c3RpbiBNLiBGb3JiZXMpCiAtIHJlZGhhdC9rZXJuZWwu c3BlYy50ZW1wbGF0ZTogTW92ZSBVS0kgYWRkb25zIHRvIGV4dHJhcy8gKFZpdGFseSBLdXpuZXRz b3YpCkBAIC01Mjc2LDcgKzUxMDMsNiBAQCBmaVwKIC0gUmV2ZXJ0ICJyZWRoYXQvY29uZmlnczog ZW5hYmxlIENPTkZJR19XQVRDSERPR19IUlRJTUVSX1BSRVRJTUVPVVQiIChEYXZpZCBBcmNhcmkp CiAtIHJlZGhhdC9jb25maWdzOiByaGVsOiBFbmFibGUgU1BENTExOCBzZW5zb3IgZHJpdmVyIChK ZW5uaWZlciBCZXJyaW5nZXIpCiAtIFRyaW0gY2hhbmdlbG9nIGFuZCByZXNldCBSSEVMX1JFTEVB U0UgZm9yIDcuMSAoSnVzdGluIE0uIEZvcmJlcykKLS0gQ29ycmVjdCBtYW51YWwgbWVyZ2UgZXJy b3IgaW4gY3J5cHRvL3JuZy5jIChQYXRyaWNrIFRhbGJlcnQpCiAtIEZpeCB1cCBwZW5kaW5nIGZv ciBtaXNtYXRjaGVzIChKdXN0aW4gTS4gRm9yYmVzKQogLSBGaXggdXAgcmViYXNlIHR5cG8gaW4g ZHJpdmVycy9wY2kvcXVpcmtzLmMgKEp1c3RpbiBNLiBGb3JiZXMpCiAtIEZpeCB1cCBtaXNtYXRj IHdpdGggQUNQSV9QTEFURk9STV9QUk9GSUxFIChKdXN0aW4gTS4gRm9yYmVzKQpAQCAtNTg1Niw3 ICs1NjgyLDYgQEAgZmlcCiAtIHJlZGhhdDogY29uZmlnczogQ2xlYW4gdXAgRFZCIHNldHRpbmdz IGluIFJIRUwgKEthdGUgSHN1YW4pCiAtIE1vdmUgQ09ORklHX0FSQ0hfVEVHUkFfMjQxX1NPQyBj b25maWcvY29tbW9uIHNvIHRoYXQgaXQgaXMgZW5hYmxlZCBmb3IgUkhFTCBhcyB3ZWxsIGFzIEZl ZG9yYS4gR2V0IHJpZCBvZiB1bmVlZGVkIENPTkZJR19URUdSQTI0MV9DTURRViBpbiBjb25maWdz L2ZlZG9yYSB3aGlsZSB3ZSdyZSBhdCBpdC4gKE1hcmsgU2FsdGVyKQogLSBmZWRvcmE6IGFybTY0 OiBFbmFibGUgdGhlIHJvY2tjaGlwIEhETUkgUVAgc3VwcG9ydCAoUGV0ZXIgUm9iaW5zb24pCi0t IGNyeXB0bzogcm5nIC0gRml4IGV4dHJuZyBFRkFVTFQgaGFuZGxpbmcgKEhlcmJlcnQgWHUpCiAt IHJlZGhhdDogY29uZmlnczogcmhlbDogYWFyY2g2NDogU3VwcG9ydCBOViBKZXRzb24gTUlQSSBj YW1lcmEgKEthdGUgSHN1YW4pCiAtIGdpdGxhYi1jaTogZGlzYWJsZSBjbGFuZyBDSSBwaXBlbGlu ZXMgKFNjb3R0IFdlYXZlcikKIC0gcmVkaGF0L2NvbmZpZ3M6IFJlbW92ZSBvYnNvbGV0ZSBhcmNo NjQvNjRrL0NPTkZJR19GT1JDRV9NQVhfWk9ORU9SREVSIChXYWltYW4gTG9uZykKQEAgLTU4OTAs NyArNTcxNSw2IEBAIGZpXAogLSByZWRoYXQvY29uZmlnczogYXV0b21vdGl2ZTogRW5hYmxlIGo3 ODRzNGV2bSBhbTMzNTkgdHNjYWRjIGNvbmZpZ3MgKEpvZWwgU2xlYm9kbmljaykKIC0gcmVkaGF0 L2NvbmZpZ3M6IGRlbGV0ZSByZW5hbWVkIENPTkZJR19NTFg1X0VOX01BQ1NFQyAoTWljaGFsIFNj aG1pZHQpCiAtIHJoZWw6IGRpc2FibGUgREVMTF9SQlUgYW5kIGNsZWFudXAgcmVsYXRlZCBkZXBz IChQZXRlciBSb2JpbnNvbikKLS0gY3J5cHRvOiBybmcgLSBFbnN1cmUgc3Rkcm5nIGlzIHRlc3Rl ZCBiZWZvcmUgdXNlci1zcGFjZSBzdGFydHMgKEhlcmJlcnQgWHUpCiAtIGdpdGxhYi1jaTogQWRk IENLSV9SRVRSSUdHRVJfUElQRUxJTkUgKFRhbGVzIGRhIEFwYXJlY2lkYSkKIC0gcmVkaGF0OiBj b25maWdzOiBkaXNhYmxlIHRoZSBxbGE0eHh4IGlTQ1NJIGRyaXZlciAoQ2hyaXMgTGVlY2gpIFtS SEVMLTEyNDJdCiAtIFJlbW92ZSBkdXBsaWNhdGVkIENPTkZJR3MgYmV0d2VlbiBhdXRvbW90aXZl IGFuZCBSSEVMIChKdWxpbyBGYXJhY2NvKQpAQCAtNjQ0Myw3ICs2MjY3LDYgQEAgZmlcCiAtIHJl ZGhhdDogY29uZmlnczogZ2VuZXJpYzogeDg2OiBEaXNhYmxlIENPTkZJR19WSURFT19PVjAxQTEw IGZvciB4ODYgcGxhdGZvcm0gKEhhbnMgZGUgR29lZGUpCiAtIHJlZGhhdDogcmVtb3ZlIHBlbmRp bmctcmhlbCBDT05GSUdfWEZTX0FTU0VSVF9GQVRBTCBmaWxlIChQYXRyaWNrIFRhbGJlcnQpCiAt IE5ldyBjb25maWdzIGluIGZzL3hmcyAoRmVkb3JhIEtlcm5lbCBUZWFtKQotLSBjcnlwdG86IHJu ZyAtIE92ZXJyaWRlIGRyaXZlcnMvY2hhci9yYW5kb20gaW4gRklQUyBtb2RlIChIZXJiZXJ0IFh1 KQogLSByYW5kb206IEFkZCBob29rIHRvIG92ZXJyaWRlIGRldmljZSByZWFkcyBhbmQgZ2V0cmFu ZG9tKDIpIChIZXJiZXJ0IFh1KQogLSByZWRoYXQvY29uZmlnczogc2hhcmUgQ09ORklHX0FSTTY0 X0VSUkFUVU1fMjk2NjI5OCBiZXR3ZWVuIHJoZWwgYW5kIGZlZG9yYSAoTWFyayBTYWx0ZXIpCiAt IGNvbmZpZ3M6IFJlbW92ZSBTMzkwIElPTU1VIGNvbmZpZyBvcHRpb25zIHRoYXQgbm8gbG9uZ2Vy IGV4aXN0IChKZXJyeSBTbml0c2VsYWFyKQpAQCAtODEzOSw3ICs3OTYyLDYgQEAgZmlcCiAtIHJl ZGhhdDogUmVwbGFjZSBoYXJkd2FyZS5yZWRoYXQuY29tIGxpbmsgaW4gVW5zdXBwb3J0ZWQgbWVz c2FnZSAoUHJhcml0IEJoYXJnYXZhKSBbMTgxMDMwMV0KIC0geDg2OiBGaXggY29tcGlsZSBpc3N1 ZXMgd2l0aCByaF9jaGVja19zdXBwb3J0ZWQoKSAoRG9uIFppY2t1cykKIC0gS0VZUzogTWFrZSB1 c2Ugb2YgcGxhdGZvcm0ga2V5cmluZyBmb3IgbW9kdWxlIHNpZ25hdHVyZSB2ZXJpZnkgKFJvYmVy dCBIb2xtZXMpCi0tIElucHV0OiBybWk0IC0gcmVtb3ZlIHRoZSBuZWVkIGZvciBhcnRpZmljaWFs IElSUSBpbiBjYXNlIG9mIEhJRCAoQmVuamFtaW4gVGlzc29pcmVzKQogLSBBUk06IHRlZ3JhOiB1 c2Igbm8gcmVzZXQgKFBldGVyIFJvYmluc29uKQogLSBhcm06IG1ha2UgQ09ORklHX0hJR0hQVEUg b3B0aW9uYWwgd2l0aG91dCBDT05GSUdfRVhQRVJUIChKb24gTWFzdGVycykKIC0gcmVkaGF0OiBy aF9rYWJpOiBkZWR1cGxpY2F0aW9uIGZyaWVuZGx5IHN0cnVjdHMgKEppcmkgQmVuYykKQEAgLTg0 OTksMTEgKzgzMjEsNCBAQCBmaVwKIC0gW2luaXRpYWwgY29tbWl0XSBBZGQgc2NyaXB0cyAoTGF1 cmEgQWJib3R0KQogLSBbaW5pdGlhbCBjb21taXRdIEFkZCBjb25maWdzIChMYXVyYSBBYmJvdHQp CiAtIFtpbml0aWFsIGNvbW1pdF0gQWRkIE1ha2VmaWxlcyAoTGF1cmEgQWJib3R0KQotLSBMaW51 eCB2Ny4yLjAtMC5yYzAuZTc3MTY3N2M5MzdkCi0KLSMjIwotIyBUaGUgZm9sbG93aW5nIEVtYWNz IG1hZ2ljIG1ha2VzIEMtYyBDLWUgdXNlIFVUQyBkYXRlcy4KLSMgTG9jYWwgVmFyaWFibGVzOgot IyBycG0tY2hhbmdlLWxvZy11c2VzLXV0YzogdAotIyBFbmQ6Ci0jIyMKKy0gTGludXggdjcuMy4w LTAucmMwLjBmMjNkNTZmMTdmZAoKZGlmZiAtLWdpdCBhL3BhdGNoLTcuMi1yZWRoYXQucGF0Y2gg Yi9wYXRjaC03LjItcmVkaGF0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3 OTg1NDZiLi4wMDAwMDAwCi0tLSBhL3BhdGNoLTcuMi1yZWRoYXQucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw0MTAzICswLDAgQEAKLSBEb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL2tlcm5lbC1w YXJhbWV0ZXJzLnR4dCAgICB8ICAyMyArCi0gRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9yaC13 YWl2ZWQtaXRlbXMucnN0ICAgICAgfCAgMjkgKysKLSBLY29uZmlnICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCi0gS2NvbmZpZy5yZWRoYXQgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzEgKysKLSBNYWtlZmlsZSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAzOCArLQotIGFyY2gvYXJtL0tj b25maWcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCi0gYXJjaC9h cm02NC9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKy0KLSBh cmNoL2FybTY0L2tlcm5lbC9zZXR1cC5jICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyNyAr Ci0gYXJjaC9zMzkwL2luY2x1ZGUvYXNtL2lwbC5oICAgICAgICAgICAgICAgICAgICAgICAgfCAg IDEgKwotIGFyY2gvczM5MC9rZXJuZWwvaXBsLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgICA1ICsKLSBhcmNoL3MzOTAva2VybmVsL3NldHVwLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgNCArCi0gYXJjaC94ODYva2VybmVsL2NwdS9jb21tb24uYyAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwotIGFyY2gveDg2L2tlcm5lbC9zZXR1cC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgMTAxICsrKy0KLSBjcnlwdG8vYWtjaXBoZXIuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQotIGNyeXB0by9kaC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDI1ICsKLSBjcnlwdG8vc2VxaXYuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxNSArLQotIGNyeXB0by9zaWcuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzICstCi0gY3J5cHRvL3Rlc3Rt Z3IuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKy0KLSBkcml2ZXJz L2FjcGkvYXBlaS9oZXN0LmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArCi0gZHJp dmVycy9hY3BpL2lycS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTcgKy0K LSBkcml2ZXJzL2FjcGkvc2Nhbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg OSArCi0gZHJpdmVycy9hdGEvbGliYWhjaS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgMTggKwotIGRyaXZlcnMvY2hhci9pcG1pL2lwbWlfZG1pLmMgICAgICAgICAgICAgICAgICAg ICAgIHwgIDE1ICsKLSBkcml2ZXJzL2NoYXIvaXBtaS9pcG1pX21zZ2hhbmRsZXIuYyAgICAgICAg ICAgICAgICB8ICAxNiArLQotIGRyaXZlcnMvY2hhci9yYW5kb20uYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHwgMTI2ICsrKystCi0gZHJpdmVycy9maXJtd2FyZS9lZmkvTWFrZWZpbGUg ICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKwotIGRyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5j ICAgICAgICAgICAgICAgICAgICAgICAgIHwgMTI0ICsrKy0tCi0gZHJpdmVycy9maXJtd2FyZS9l ZmkvbGlic3R1Yi9mZHQuYyAgICAgICAgICAgICAgICAgfCAgIDUgKwotIGRyaXZlcnMvZmlybXdh cmUvZWZpL2xpYnN0dWIvc2VjdXJlYm9vdC5jICAgICAgICAgIHwgIDE0ICstCi0gZHJpdmVycy9m aXJtd2FyZS9lZmkvc2VjdXJlYm9vdC5jICAgICAgICAgICAgICAgICAgfCAgMzggKysKLSBkcml2 ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQvY29yZXNpZ2h0LWV0bTR4LWNvcmUuYyB8ICAxOSArCi0g ZHJpdmVycy9pb21tdS9pb21tdS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjIg KwotIGRyaXZlcnMvbWVzc2FnZS9mdXNpb24vbXB0c2FzLmMgICAgICAgICAgICAgICAgICAgIHwg ICA1ICsKLSBkcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNwaS5jICAgICAgICAgICAgICAgICAg ICB8ICAgNSArCi0gZHJpdmVycy9uZXQvd2lyZWd1YXJkL21haW4uYyAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDYgKwotIGRyaXZlcnMvcGNpL3BjaS1kcml2ZXIuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICA5ICsKLSBkcml2ZXJzL3BjaS9xdWlya3MuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAyNCArCi0gZHJpdmVycy9zY3NpL2hwc2EuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDQgKwotIGRyaXZlcnMvc2NzaS9xbGEyeHh4L3FsYV9vcy5j ICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICsKLSBkcml2ZXJzL3Njc2kvc2QuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMiArCi0gZHJpdmVycy91c2IvY29yZS9odWIu YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDcgKwotIGZzL2Fmcy9tYWluLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzICsKLSBmcy9lcm9mcy9zdXBl ci5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOSArCi0gZnMvZXh0NC9z dXBlci5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTEgKwotIGluY2x1 ZGUvbGludXgvY3J5cHRvLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKLSBp bmNsdWRlL2xpbnV4L2VmaS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyMiAr LQotIGluY2x1ZGUvbGludXgva2VybmVsLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDI4ICsrCi0gaW5jbHVkZS9saW51eC9sc21faG9va19kZWZzLmggICAgICAgICAgICAgICAgICAg ICAgfCAgIDEgKwotIGluY2x1ZGUvbGludXgvbW9kdWxlLmggICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICA1ICsKLSBpbmNsdWRlL2xpbnV4L3BhbmljLmggICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAxNyArLQotIGluY2x1ZGUvbGludXgvcGNpLmggICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICA1ICsKLSBpbmNsdWRlL2xpbnV4L3JhbmRvbS5oICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAxMCArCi0gaW5jbHVkZS9saW51eC9yaF9mbGFncy5oICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzQgKysKLSBpbmNsdWRlL2xpbnV4L3JoX2thYmku aCAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDU0MSArKysrKysrKysrKysrKysrKysrKysK LSBpbmNsdWRlL2xpbnV4L3JoX3dhaXZlZC5oICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAx OSArCi0gaW5jbHVkZS9saW51eC9zZWN1cml0eS5oICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgIDkgKwotIGluaXQvbWFpbi5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICA1ICsKLSBrZXJuZWwvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgMiArCi0ga2VybmVsL2JwZi9jb3JlLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDUgKwotIGtlcm5lbC9icGYvc3lzY2FsbC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDIzICsKLSBrZXJuZWwvbW9kdWxlL21haW4uYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAxMyArCi0ga2VybmVsL21vZHVsZS9zaWduaW5nLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKy0KLSBrZXJuZWwvcGFuaWMuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxMiArCi0ga2VybmVsL3JoX2ZsYWdzLmMg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxMTUgKysrKysKLSBrZXJuZWwvcmhf bWVzc2FnZXMuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDQxNCArKysrKysrKysr KysrKysrCi0ga2VybmVsL3JoX21lc3NhZ2VzLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAzMzQgKysrKysrKysrKysrKwotIGtlcm5lbC9yaF93YWl2ZWQuYyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTQ3ICsrKysrKwotIHNjcmlwdHMvTWFrZWZpbGUubGliICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzICsKLSBzY3JpcHRzL21vZC9tb2Rwb3N0 LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgOCArCi0gc2NyaXB0cy90YWdzLnNo ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIgKwotIHNlY3VyaXR5L2lu dGVncml0eS9wbGF0Zm9ybV9jZXJ0cy9sb2FkX3VlZmkuYyAgICAgIHwgICA2ICstCi0gc2VjdXJp dHkvbG9ja2Rvd24vS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTMgKwotIHNl Y3VyaXR5L2xvY2tkb3duL2xvY2tkb3duLmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDExICsK LSB0b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvREVOWUxJU1QucmhlbCAgICAgICAgICB8ICA3 NiArKysKLSB0b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvTWFrZWZpbGUgICAgICAgICAgICAg ICB8ICAgMiArLQotIHRvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9nX3Rlc3RzL2tzeW1z X2J0Zi5jIHwgIDMxIC0tCi0gNzYgZmlsZXMgY2hhbmdlZCwgMjY2OSBpbnNlcnRpb25zKCspLCAx MDggZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRl L2tlcm5lbC1wYXJhbWV0ZXJzLnR4dCBiL0RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUva2VybmVs LXBhcmFtZXRlcnMudHh0Ci1pbmRleCBlOGZmMzY5ODJkOTcuLjBhYmZmNTZiMTM1ZCAxMDA2NDQK LS0tLSBhL0RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUva2VybmVsLXBhcmFtZXRlcnMudHh0Ci0r KysgYi9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL2tlcm5lbC1wYXJhbWV0ZXJzLnR4dAotQEAg LTY2NDEsNiArNjY0MSwyMCBAQCBLZXJuZWwgcGFyYW1ldGVycwotIAkJMglUaGUgImFpcnBsYW5l IG1vZGUiIGJ1dHRvbiB0b2dnbGVzIGJldHdlZW4gZXZlcnl0aGluZwotIAkJCWJsb2NrZWQgYW5k IGV2ZXJ5dGhpbmcgdW5ibG9ja2VkLgotIAotKwlyaF93YWl2ZWQ9Ci0rCQkJRW5hYmxlIHdhaXZl ZCBpdGVtcyBpbiBSSEVMLgotKwotKwkJCVNvbWUgc3BlY2lmaWMgZmVhdHVyZXMsIG9yIHNlY3Vy aXR5IG1pdGlnYXRpb25zLCBjYW4gYmUKLSsJCQl3YWl2ZWQgKHRvZ2dsZWQgb24vb2ZmKSBvbiBk ZW1hbmQgaW4gUkhFTC4gIEhvd2V2ZXIsCi0rCQkJd2FpdmluZyBhbnkgb2YgdGhlc2UgaXRlbXMg c2hvdWxkIGJlIHVzZWQganVkaWNpb3VzbHksCi0rCQkJYXMgaXQgZ2VuZXJhbGx5IG1lYW5zIHRo ZSBzeXN0ZW0gbWlnaHQgZW5kIHVwIGJlaW5nCi0rCQkJY29uc2lkZXJlZCBpbnNlY3VyZSBvciBl dmVuIG91dC1vZi1zY29wZSBmb3Igc3VwcG9ydC4KLSsKLSsJCQlGb3JtYXQ6IDxpdGVtLTE+LDxp dGVtLTI+Li4uPGl0ZW0tbj4KLSsKLSsJCQlVc2UgJ3JoX3dhaXZlZCcgdG8gZW5hYmxlIGFsbCB3 YWl2ZWQgZmVhdHVyZXMgbGlzdGVkIGF0Ci0rCQkJRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9y aC13YWl2ZWQtZmVhdHVyZXMucnN0Ci0rCi0gCXJpbmczbXdhaXQ9ZGlzYWJsZQotIAkJCVtLTkxd IERpc2FibGUgcmluZyAzIE1PTklUT1IvTVdBSVQgZmVhdHVyZSBvbiBzdXBwb3J0ZWQKLSAJCQlD UFVzLgotQEAgLTgwNjEsNiArODA3NSwxNSBAQCBLZXJuZWwgcGFyYW1ldGVycwotIAl1bmtub3du X25taV9wYW5pYwotIAkJCVtYODZdIENhdXNlIHBhbmljIG9uIHVua25vd24gTk1JLgotIAotKwl1 bnByaXZpbGVnZWRfYnBmX2Rpc2FibGVkPQotKwkJCUZvcm1hdDogeyAiMCIgfCAiMSIgfCAiMiIg fQotKwkJCVNldHMgdGhlIGluaXRpYWwgdmFsdWUgb2YKLSsJCQlrZXJuZWwudW5wcml2aWxlZ2Vk X2JwZl9kaXNhYmxlZCBzeXNjdGwga25vYi4KLSsJCQkwIC0gdW5wcml2aWxlZ2VkIGJwZigpIHN5 c2NhbGwgYWNjZXNzIGlzIGVuYWJsZWQuCi0rCQkJMSAtIHVucHJpdmlsZWdlZCBicGYoKSBzeXNj YWxsIGFjY2VzcyBpcyBkaXNhYmxlZCBwZXJtYW5lbnRseS4KLSsJCQkyIC0gdW5wcml2aWxlZ2Vk IGJwZigpIHN5c2NhbGwgYWNjZXNzIGlzIGRpc2FibGVkLgotKwkJCURlZmF1bHQgdmFsdWUgaXMg Mi4KLSsKLSAJdW53aW5kX2RlYnVnCVtYODYtNjQsRUFSTFldCi0gCQkJRW5hYmxlIHVud2luZGVy IGRlYnVnIG91dHB1dC4gIFRoaXMgY2FuIGJlCi0gCQkJdXNlZnVsIGZvciBkZWJ1Z2dpbmcgY2Vy dGFpbiB1bndpbmRlciBlcnJvcgotZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vYWRtaW4tZ3Vp ZGUvcmgtd2FpdmVkLWl0ZW1zLnJzdCBiL0RvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvcmgtd2Fp dmVkLWl0ZW1zLnJzdAotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwMDAwMC4u NzQ3MWM4OTE0MTljCi0tLS0gL2Rldi9udWxsCi0rKysgYi9Eb2N1bWVudGF0aW9uL2FkbWluLWd1 aWRlL3JoLXdhaXZlZC1pdGVtcy5yc3QKLUBAIC0wLDAgKzEsMjkgQEAKLSsuLiBfcmhfd2FpdmVk X2l0ZW1zOgotKwotKz09PT09PT09PT09PT09PT09PT09Ci0rUmVkIEhhdCBXYWl2ZWQgSXRlbXMK LSs9PT09PT09PT09PT09PT09PT09PQotKwotK1dhaXZlZCBJdGVtcyBpcyBhIG1lY2hhbmlzbSBv ZmZlcmVkIGJ5IFJlZCBIYXQgd2hpY2ggYWxsb3dzIGN1c3RvbWVycyB0byAid2FpdmUiCi0rYW5k IHV0aWxpemUgZmVhdHVyZXMgdGhhdCBhcmUgbm90IGVuYWJsZWQgYnkgZGVmYXVsdCBhcyB0aGVz ZSBhcmUgY29uc2lkZXJlZCBhcwotK3VubWFpbnRhaW5lZCwgaW5zZWN1cmUsIHJ1ZGltZW50YXJ5 LCBvciBkZXByZWNhdGVkLCBidXQgYXJlIHNoaXBwZWQgd2l0aCB0aGUKLStSSEVMIGtlcm5lbCBm b3IgY3VzdG9tZXIncyBjb252aW5pZW5jZSBvbmx5LgotK1dhaXZlZCBJdGVtcyBjYW4gcmFuZ2Ug ZnJvbSBmZWF0dXJlcyB0aGF0IGNhbiBiZSBlbmFibGVkIG9uIGRlbWFuZCB0byBzcGVjaWZpYwot K3NlY3VyaXR5IG1pdGlnYXRpb25zIHRoYXQgY2FuIGJlIGRpc2FibGVkIG9uIGRlbWFuZC4KLSsK LStUbyBleHBsaWNpdGx5ICJ3YWl2ZSIgYW55IG9mIHRoZXNlIGl0ZW1zLCBSSEVMIG9mZmVycyB0 aGUgYGByaF93YWl2ZWRgYAotK2tlcm5lbCBib290IHBhcmFtZXRlci4gVG8gYWxsb3cgc2V0IG9m IHdhaXZlZCBpdGVtcywgYXBwZW5kCi0rYGByaF93YWl2ZWQ9PGl0ZW0gbmFtZT4sLi4uLDxpdGVt IG5hbWU+YGAgdG8gdGhlIGtlcm5lbAotK2NtZGxpbmUuCi0rQXBwZW5kaW5nIGBgcmhfd2FpdmVk PWZlYXR1cmVzYGAgd2lsbCB3YWl2ZSBhbGwgZmVhdHVyZXMgbGlzdGVkIGJlbG93LAotK2FuZCBh cHBlbmRpbmcgYGByaF93YWl2ZWQ9Y3Zlc2BgIHdpbGwgd2FpdmUgYWxsIHNlY3VyaXR5IG1pdGln YXRpb25zCi0rbGlzdGVkIGJlbG93LgotKwotK1RoZSB3YWl2ZWQgaXRlbXMgbGlzdGVkIGluIHRo ZSBuZXh0IHNlc3Npb24gZm9sbG93IHRoZSBwYXR0ZXJuIGJlbG93OgotKwotKy0gaXRlbSBuYW1l Ci0rICAgICAgICBpdGVtIGRlc2NyaXB0aW9uCi0rCi0rTGlzdCBvZiBSZWQgSGF0IFdhaXZlZCBJ dGVtcwotKz09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsKLWRpZmYgLS1naXQgYS9LY29u ZmlnIGIvS2NvbmZpZwotaW5kZXggMzA3ZTU4MTE0NGRlLi4xMWU5M2U0NzljZTQgMTAwNjQ0Ci0t LS0gYS9LY29uZmlnCi0rKysgYi9LY29uZmlnCi1AQCAtMzIsMyArMzIsNSBAQCBzb3VyY2UgImxp Yi9LY29uZmlnLmRlYnVnIgotIHNvdXJjZSAiRG9jdW1lbnRhdGlvbi9LY29uZmlnIgotIAotIHNv dXJjZSAiaW9fdXJpbmcvS2NvbmZpZyIKLSsKLStzb3VyY2UgIktjb25maWcucmVkaGF0IgotZGlm ZiAtLWdpdCBhL0tjb25maWcucmVkaGF0IGIvS2NvbmZpZy5yZWRoYXQKLW5ldyBmaWxlIG1vZGUg MTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMDAuLjg1NzcxZDc0YzM0ZgotLS0tIC9kZXYvbnVsbAot KysrIGIvS2NvbmZpZy5yZWRoYXQKLUBAIC0wLDAgKzEsMzEgQEAKLSsjIFNQRFgtTGljZW5zZS1J ZGVudGlmaWVyOiBHUEwtMi4wLW9ubHkKLSsjCi0rIyBSZWQgSGF0IHNwZWNpZmljIG9wdGlvbnMK LSsjCi0rCi0rbWVudSAiUmVkIEhhdCBvcHRpb25zIgotKwotK2NvbmZpZyBSSEVMX0RJRkZFUkVO Q0VTCi0rCWJvb2wgIkVuYWJsZSBSSEVMLW9ubHkgY29kZSIKLSsJaGVscAotKwkgIFRoaXMgb3B0 aW9uIGNvbnRyb2xzIHdoZXRoZXIgcmhlbC1vbmx5IGNoYW5nZXMgYXJlIGVuYWJsZWQgZHVyaW5n Ci0rCSAgdGhlIGJ1aWxkLiBVbmxlc3MgeW91IHdhbnQgdG8gZW5hYmxlIHJoZWwtb25seSBjaGFu Z2VzLCBzYXkgTiBoZXJlLgotKwotK2NvbmZpZyBSSF9LQUJJX1NJWkVfQUxJR05fQ0hFQ0tTCi0r CWJvb2wgIkVuYWJsZXMgbW9yZSBzdHJpbmdlbnQga2FiaSBjaGVja3MgaW4gdGhlIG1hY3JvcyIK LSsJZGVwZW5kcyBvbiBSSEVMX0RJRkZFUkVOQ0VTCi0rCWRlZmF1bHQgeQotKwloZWxwCi0rCSAg VGhpcyBvcHRpb24gZW5hYmxlcyBtb3JlIHN0cmluZ2VudCBrYWJpIGNoZWNrcy4gVGhvc2UgbXVz dAotKwkgIGJlIGRpc2FibGVkIGluIGNhc2Ugb2YgYSBkZWJ1ZyBidWlsZCwgYmVjYXVzZSBkZWJ1 ZyBidWlsZHMKLSsJICBhbGxvdyB0byBjaGFuZ2Ugc3RydWN0IHNpemVzLgotKwotK2NvbmZpZyBS SF9BVVRPTU9USVZFCi0rCWJvb2wgIkVuYWJsZSBhdXRvbW90aXZlIG9ubHkgY29kZSIKLSsJZGVw ZW5kcyBvbiBSSEVMX0RJRkZFUkVOQ0VTCi0rCWRlZmF1bHQgbgotKwloZWxwCi0rCSAgVGhpcyBv cHRpb24gY29udHJvbHMgd2hldGhlciBjb2RlIGlzIGluY2x1ZGVkIGluIHRoZSBhdXRvbW90aXZl Ci0rCSAga2VybmVsIGJ1aWxkLiBJZiB5b3UgYXJlIGJ1aWxkaW5nIGFuIGF1dG9tb3RpdmUga2Vy bmVsLCBzYXkgWS4KLSsKLStlbmRtZW51Ci1kaWZmIC0tZ2l0IGEvTWFrZWZpbGUgYi9NYWtlZmls ZQotaW5kZXggZGRjYzZkY2ExZWNlLi43YzUyZjRjMzY4ZWYgMTAwNjQ0Ci0tLS0gYS9NYWtlZmls ZQotKysrIGIvTWFrZWZpbGUKLUBAIC0zNTgsNiArMzU4LDE3IEBAIGlmbmVxICgkKGZpbHRlciBp bnN0YWxsLCQoTUFLRUNNREdPQUxTKSksKQotICAgICBlbmRpZgotIGVuZGlmCi0gCi0rIyBDS0kv Y3Jvc3MgY29tcGlsYXRpb24gaGFjawotKyMgRG8gd2UgbmVlZCB0byByZWJ1aWxkIHNjcmlwdHMg YWZ0ZXIgY3Jvc3MgY29tcGlsYXRpb24/Ci0rIyBJZiBrZXJuZWwgd2FzIGNyb3NzLWNvbXBpbGVk LCB0aGVzZSBzY3JpcHRzIGhhdmUgYXJjaCBvZiBidWlsZCBob3N0LgotK1JFQlVJTERfU0NSSVBU U19GT1JfQ1JPU1M6PTAKLSsKLSsjIFJlZ2VuZXJhdGluZyBjb25maWcgd2l0aCBpbmNvbXBsZXRl IHNvdXJjZSB0cmVlIHdpbGwgcHJvZHVjZSBkaWZmZXJlbnQKLSsjIGNvbmZpZyBvcHRpb25zLiBE aXNhYmxlIGl0LgotK2lmZXEgKCQoUkVCVUlMRF9TQ1JJUFRTX0ZPUl9DUk9TUyksMSkKLSttYXkt c3luYy1jb25maWc6PQotK2VuZGlmCi0rCi0gaWZkZWYgbWl4ZWQtYnVpbGQKLSAjID09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotICMgV2UncmUgY2FsbGVkIHdpdGggbWl4ZWQgdGFyZ2V0cyAoKmNvbmZpZyBh bmQgYnVpbGQgdGFyZ2V0cykuCi1AQCAtMTQzMiw2ICsxNDQzLDggQEAgdWFwaS1hc20tZ2VuZXJp YzoKLSAjIEdlbmVyYXRlIHNvbWUgZmlsZXMKLSAjIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIAotK2lu Y2x1ZGUgJChzcmN0cmVlKS9NYWtlZmlsZS5yaGVsdmVyCi0rCi0gIyBLRVJORUxSRUxFQVNFIGNh biBjaGFuZ2UgZnJvbSBhIGZldyBkaWZmZXJlbnQgcGxhY2VzLCBtZWFuaW5nIHZlcnNpb24uaAot ICMgbmVlZHMgdG8gYmUgdXBkYXRlZCwgc28gdGhpcyBjaGVjayBpcyBmb3JjZWQgb24gYWxsIGJ1 aWxkcwotIAotQEAgLTE0NTYsNyArMTQ2OSwxMyBAQCBkZWZpbmUgZmlsZWNoa192ZXJzaW9uLmgK LSAJKChjKSA+IDI1NSA/IDI1NSA6IChjKSkpJzsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcCi0gCWVjaG8gXCNkZWZpbmUgTElOVVhfVkVSU0lPTl9NQUpPUiAkKFZFUlNJ T04pOyAgICAgICAgICAgICAgICAgICAgXAotIAllY2hvIFwjZGVmaW5lIExJTlVYX1ZFUlNJT05f UEFUQ0hMRVZFTCAkKFBBVENITEVWRUwpOyAgICAgICAgICAgIFwKLS0JZWNobyBcI2RlZmluZSBM SU5VWF9WRVJTSU9OX1NVQkxFVkVMICQoU1VCTEVWRUwpCi0rCWVjaG8gXCNkZWZpbmUgTElOVVhf VkVSU0lPTl9TVUJMRVZFTCAkKFNVQkxFVkVMKTsgICAgICAgICAgICAgICAgXAotKwllY2hvICcj ZGVmaW5lIFJIRUxfTUFKT1IgJChSSEVMX01BSk9SKSc7IFwKLSsJZWNobyAnI2RlZmluZSBSSEVM X01JTk9SICQoUkhFTF9NSU5PUiknOyBcCi0rCWVjaG8gJyNkZWZpbmUgUkhFTF9SRUxFQVNFX1ZF UlNJT04oYSxiKSAoKChhKSA8PCA4KSArIChiKSknOyBcCi0rCWVjaG8gJyNkZWZpbmUgUkhFTF9S RUxFQVNFX0NPREUgXAotKwkJJChzaGVsbCBleHByICQoUkhFTF9NQUpPUikgXCogMjU2ICsgJChS SEVMX01JTk9SKSknOyBcCi0rCWVjaG8gJyNkZWZpbmUgUkhFTF9SRUxFQVNFICIkKFJIRUxfUkVM RUFTRSkiJwotIGVuZGVmCi0gCi0gJCh2ZXJzaW9uX2gpOiBwcml2YXRlIFBBVENITEVWRUwgOj0g JChvciAkKFBBVENITEVWRUwpLCAwKQotQEAgLTIxMDgsNiArMjEyNywyMyBAQCBlbmRpZgotIAot IGlmZGVmIENPTkZJR19NT0RVTEVTCi0gCi0rc2NyaXB0c19idWlsZDoKLSsJJChNQUtFKSAkKGJ1 aWxkKT1zY3JpcHRzL2Jhc2ljCi0rCSQoTUFLRSkgJChidWlsZCk9c2NyaXB0cy9tb2QKLSsJJChN QUtFKSAkKGJ1aWxkKT1zY3JpcHRzIHNjcmlwdHMvbW9kdWxlLmxkcwotKwkkKE1BS0UpICQoYnVp bGQpPXNjcmlwdHMgc2NyaXB0cy91bmlmZGVmCi0rCSQoTUFLRSkgJChidWlsZCk9c2NyaXB0cwot KwotK3ByZXBhcmVfYWZ0ZXJfY3Jvc3M6Ci0rCSMgZGlzYWJsZSBTVEFDS19WQUxJREFUSU9OIHRv IGF2b2lkIGJ1aWxkaW5nIG9ianRvb2wKLSsJc2VkIC1pICcvXkNPTkZJR19TVEFDS19WQUxJREFU SU9OL2QnIC4vaW5jbHVkZS9jb25maWcvYXV0by5jb25mIHx8IHRydWUKLSsJIyBidWlsZCBtaW5p bXVtIHNldCBvZiBzY3JpcHRzIGFuZCByZXNvbHZlX2J0ZmlkcyB0byBhbGxvdyBidWlsZGluZwot KwkjIGV4dGVybmFsIG1vZHVsZXMKLSsJJChNQUtFKSBLQlVJTERfRVhUTU9EPSIiIE09IiIgc2Ny aXB0c19idWlsZCBWPTEKLSsJJChNQUtFKSAtQyB0b29scy9icGYvcmVzb2x2ZV9idGZpZHMKLSsK LStQSE9OWSArPSBwcmVwYXJlX2FmdGVyX2Nyb3NzIHNjcmlwdHNfYnVpbGQKLSsKLSBtb2R1bGVz Lm9yZGVyOiAkKGJ1aWxkLWRpcikKLSAJQDoKLSAKLWRpZmYgLS1naXQgYS9hcmNoL2FybS9LY29u ZmlnIGIvYXJjaC9hcm0vS2NvbmZpZwotaW5kZXggOTE4NzI0MGEwMmRiLi40NmQxMjU4NzAwYWYg MTAwNjQ0Ci0tLS0gYS9hcmNoL2FybS9LY29uZmlnCi0rKysgYi9hcmNoL2FybS9LY29uZmlnCi1A QCAtMTIxNiw5ICsxMjE2LDkgQEAgY29uZmlnIEhJR0hNRU0KLSAJICBJZiB1bnN1cmUsIHNheSBu LgotIAotIGNvbmZpZyBISUdIUFRFCi0tCWJvb2wgIkFsbG9jYXRlIDJuZC1sZXZlbCBwYWdldGFi bGVzIGZyb20gaGlnaG1lbSIgaWYgRVhQRVJUCi0rCWJvb2wgIkFsbG9jYXRlIDJuZC1sZXZlbCBw YWdldGFibGVzIGZyb20gaGlnaG1lbSIKLSAJZGVwZW5kcyBvbiBISUdITUVNICYmICFQUkVFTVBU X1JUCi0tCWRlZmF1bHQgeQotKwlkZWZhdWx0IG4KLSAJaGVscAotIAkgIFRoZSBWTSB1c2VzIG9u ZSBwYWdlIG9mIHBoeXNpY2FsIG1lbW9yeSBmb3IgZWFjaCBwYWdlIHRhYmxlLgotIAkgIEZvciBz eXN0ZW1zIHdpdGggYSBsb3Qgb2YgcHJvY2Vzc2VzLCB0aGlzIGNhbiB1c2UgYSBsb3Qgb2YKLWRp ZmYgLS1naXQgYS9hcmNoL2FybTY0L0tjb25maWcgYi9hcmNoL2FybTY0L0tjb25maWcKLWluZGV4 IGIzYWZlMDY4ODkxOS4uZDIzYTcyOGFhYzAzIDEwMDY0NAotLS0tIGEvYXJjaC9hcm02NC9LY29u ZmlnCi0rKysgYi9hcmNoL2FybTY0L0tjb25maWcKLUBAIC0xNDg5LDcgKzE0ODksNyBAQCBlbmRj aG9pY2UKLSAKLSBjb25maWcgQVJNNjRfRk9SQ0VfNTJCSVQKLSAJYm9vbCAiRm9yY2UgNTItYml0 IHZpcnR1YWwgYWRkcmVzc2VzIGZvciB1c2Vyc3BhY2UiCi0tCWRlcGVuZHMgb24gQVJNNjRfVkFf QklUU181MiAmJiBFWFBFUlQKLSsJZGVwZW5kcyBvbiBBUk02NF9WQV9CSVRTXzUyCi0gCWhlbHAK LSAJICBGb3Igc3lzdGVtcyB3aXRoIDUyLWJpdCB1c2Vyc3BhY2UgVkFzIGVuYWJsZWQsIHRoZSBr ZXJuZWwgd2lsbCBhdHRlbXB0Ci0gCSAgdG8gbWFpbnRhaW4gY29tcGF0aWJpbGl0eSB3aXRoIG9s ZGVyIHNvZnR3YXJlIGJ5IHByb3ZpZGluZyA0OC1iaXQgVkFzCi1kaWZmIC0tZ2l0IGEvYXJjaC9h cm02NC9rZXJuZWwvc2V0dXAuYyBiL2FyY2gvYXJtNjQva2VybmVsL3NldHVwLmMKLWluZGV4IDIz YzA1ZGM3YThmMi4uZDdiN2IyZjM5ZTE2IDEwMDY0NAotLS0tIGEvYXJjaC9hcm02NC9rZXJuZWwv c2V0dXAuYwotKysrIGIvYXJjaC9hcm02NC9rZXJuZWwvc2V0dXAuYwotQEAgLTMyLDYgKzMyLDgg QEAKLSAjaW5jbHVkZSA8bGludXgvc2NoZWQvdGFzay5oPgotICNpbmNsdWRlIDxsaW51eC9zY3Mu aD4KLSAjaW5jbHVkZSA8bGludXgvbW0uaD4KLSsjaW5jbHVkZSA8bGludXgvc2VjdXJpdHkuaD4K LSsjaW5jbHVkZSA8bGludXgvbGliZmR0Lmg+Ci0gCi0gI2luY2x1ZGUgPGFzbS9hY3BpLmg+Ci0g I2luY2x1ZGUgPGFzbS9maXhtYXAuaD4KLUBAIC0yMDcsNiArMjA5LDI0IEBAIHN0YXRpYyB2b2lk IF9faW5pdCBzZXR1cF9tYWNoaW5lX2ZkdChwaHlzX2FkZHJfdCBkdF9waHlzKQotIAlkdW1wX3N0 YWNrX3NldF9hcmNoX2Rlc2MoIiVzIChEVCkiLCBuYW1lKTsKLSB9Ci0gCi0rc3RhdGljIHZvaWQg X19pbml0IGluaXRfc2VjdXJlYm9vdF9tb2RlKHZvaWQpCi0rewotKwl2b2lkICpmZHQgPSBpbml0 aWFsX2Jvb3RfcGFyYW1zOwotKwl1NjQgY2hvc2VuOwotKwljb25zdCBfX2JlMzIgKnByb3A7Ci0r CWludCBsZW47Ci0rCi0rCWNob3NlbiA9IGZkdF9wYXRoX29mZnNldChmZHQsICIvY2hvc2VuIik7 Ci0rCWlmIChjaG9zZW4gPCAwKQotKwkJcmV0dXJuOwotKwotKwlwcm9wID0gZmR0X2dldHByb3Ao ZmR0LCBjaG9zZW4sICJzZWN1cmUtYm9vdC1tb2RlIiwgJmxlbik7Ci0rCWlmICghcHJvcCB8fCBs ZW4gIT0gc2l6ZW9mKHUzMikpCi0rCQlyZXR1cm47Ci0rCi0rCWVmaV9zZXRfc2VjdXJlX2Jvb3Qo KGVudW0gZWZpX3NlY3VyZWJvb3RfbW9kZSlmZHQzMl90b19jcHUoKnByb3ApKTsKLSt9Ci0rCi0g c3RhdGljIHZvaWQgX19pbml0IHJlcXVlc3Rfc3RhbmRhcmRfcmVzb3VyY2VzKHZvaWQpCi0gewot IAlzdHJ1Y3QgbWVtYmxvY2tfcmVnaW9uICpyZWdpb247Ci1AQCAtMzI3LDYgKzM0NywxMyBAQCB2 b2lkIF9faW5pdCBfX25vX3Nhbml0aXplX2FkZHJlc3Mgc2V0dXBfYXJjaChjaGFyICoqY21kbGlu ZV9wKQotIAkJCXByX3dhcm4oRldfQlVHICJLZXJuZWwgaW1hZ2UgbWlzYWxpZ25lZCBhdCBib290 LCBwbGVhc2UgZml4IHlvdXIgYm9vdGxvYWRlciEiKTsKLSAJCVdBUk5fVEFJTlQobW11X2VuYWJs ZWRfYXRfYm9vdCwgVEFJTlRfRklSTVdBUkVfV09SS0FST1VORCwKLSAJCQkgICBGV19CVUcgIkJv b3RlZCB3aXRoIE1NVSBlbmFibGVkISIpOwotKwl9IGVsc2UgewotKwkJaW5pdF9zZWN1cmVib290 X21vZGUoKTsKLSsKLSsjaWZkZWYgQ09ORklHX0xPQ0tfRE9XTl9JTl9FRklfU0VDVVJFX0JPT1QK LSsJCWlmIChlZmlfZW5hYmxlZChFRklfU0VDVVJFX0JPT1QpKQotKwkJCXNlY3VyaXR5X2xvY2tf a2VybmVsX2Rvd24oIkVGSSBTZWN1cmUgQm9vdCBtb2RlIiwgTE9DS0RPV05fSU5URUdSSVRZX01B WCk7Ci0rI2VuZGlmCi0gCX0KLSAKLSAJYXJtNjRfbWVtYmxvY2tfaW5pdCgpOwotZGlmZiAtLWdp dCBhL2FyY2gvczM5MC9pbmNsdWRlL2FzbS9pcGwuaCBiL2FyY2gvczM5MC9pbmNsdWRlL2FzbS9p cGwuaAotaW5kZXggYjBkMDAwMzI0NzlkLi5hZmI5NTQ0ZmIwMDcgMTAwNjQ0Ci0tLS0gYS9hcmNo L3MzOTAvaW5jbHVkZS9hc20vaXBsLmgKLSsrKyBiL2FyY2gvczM5MC9pbmNsdWRlL2FzbS9pcGwu aAotQEAgLTEzOSw2ICsxMzksNyBAQCBpbnQgaXBsX3JlcG9ydF9hZGRfY29tcG9uZW50KHN0cnVj dCBpcGxfcmVwb3J0ICpyZXBvcnQsIHN0cnVjdCBrZXhlY19idWYgKmtidWYsCi0gCQkJICAgICB1 bnNpZ25lZCBjaGFyIGZsYWdzLCB1bnNpZ25lZCBzaG9ydCBjZXJ0KTsKLSBpbnQgaXBsX3JlcG9y dF9hZGRfY2VydGlmaWNhdGUoc3RydWN0IGlwbF9yZXBvcnQgKnJlcG9ydCwgdm9pZCAqa2V5LAot IAkJCSAgICAgICB1bnNpZ25lZCBsb25nIGFkZHIsIHVuc2lnbmVkIGxvbmcgbGVuKTsKLStib29s IGlwbF9nZXRfc2VjdXJlYm9vdCh2b2lkKTsKLSAKLSAvKgotICAqIERJQUcgMzA4IHN1cHBvcnQK LWRpZmYgLS1naXQgYS9hcmNoL3MzOTAva2VybmVsL2lwbC5jIGIvYXJjaC9zMzkwL2tlcm5lbC9p cGwuYwotaW5kZXggM2MzNDZiMDJjZWI5Li4zMGUxNmEwZDQ0OTAgMTAwNjQ0Ci0tLS0gYS9hcmNo L3MzOTAva2VybmVsL2lwbC5jCi0rKysgYi9hcmNoL3MzOTAva2VybmVsL2lwbC5jCi1AQCAtMjUy NywzICsyNTI3LDggQEAgaW50IGlwbF9yZXBvcnRfZnJlZShzdHJ1Y3QgaXBsX3JlcG9ydCAqcmVw b3J0KQotIH0KLSAKLSAjZW5kaWYKLSsKLStib29sIGlwbF9nZXRfc2VjdXJlYm9vdCh2b2lkKQot K3sKLSsJcmV0dXJuICEhaXBsX3NlY3VyZV9mbGFnOwotK30KLWRpZmYgLS1naXQgYS9hcmNoL3Mz OTAva2VybmVsL3NldHVwLmMgYi9hcmNoL3MzOTAva2VybmVsL3NldHVwLmMKLWluZGV4IGI2MDI4 NDMyOGZlMy4uZTRkMzdiMDhjYTI5IDEwMDY0NAotLS0tIGEvYXJjaC9zMzkwL2tlcm5lbC9zZXR1 cC5jCi0rKysgYi9hcmNoL3MzOTAva2VybmVsL3NldHVwLmMKLUBAIC00Nyw2ICs0Nyw3IEBACi0g I2luY2x1ZGUgPGxpbnV4L2NyYXNoX2R1bXAuaD4KLSAjaW5jbHVkZSA8bGludXgvbWVtb3J5Lmg+ Ci0gI2luY2x1ZGUgPGxpbnV4L3N0YXJ0X2tlcm5lbC5oPgotKyNpbmNsdWRlIDxsaW51eC9zZWN1 cml0eS5oPgotICNpbmNsdWRlIDxsaW51eC9odWdldGxiLmg+Ci0gI2luY2x1ZGUgPGxpbnV4L2tt ZW1sZWFrLmg+Ci0gCi1AQCAtOTE3LDYgKzkxOCw5IEBAIHZvaWQgX19pbml0IHNldHVwX2FyY2go Y2hhciAqKmNtZGxpbmVfcCkKLSAKLSAJbG9nX2NvbXBvbmVudF9saXN0KCk7Ci0gCi0rCWlmIChp cGxfZ2V0X3NlY3VyZWJvb3QoKSkKLSsJCXNlY3VyaXR5X2xvY2tfa2VybmVsX2Rvd24oIlNlY3Vy ZSBJUEwgbW9kZSIsIExPQ0tET1dOX0lOVEVHUklUWV9NQVgpOwotKwotIAkvKiBIYXZlIG9uZSBj b21tYW5kIGxpbmUgdGhhdCBpcyBwYXJzZWQgYW5kIHNhdmVkIGluIC9wcm9jL2NtZGxpbmUgKi8K LSAJLyogYm9vdF9jb21tYW5kX2xpbmUgaGFzIGJlZW4gYWxyZWFkeSBzZXQgdXAgaW4gZWFybHku YyAqLwotIAkqY21kbGluZV9wID0gYm9vdF9jb21tYW5kX2xpbmU7Ci1kaWZmIC0tZ2l0IGEvYXJj aC94ODYva2VybmVsL2NwdS9jb21tb24uYyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMK LWluZGV4IGEzY2FkZGQ0MTFlYy4uZDY1NGJiMmI5YzdhIDEwMDY0NAotLS0tIGEvYXJjaC94ODYv a2VybmVsL2NwdS9jb21tb24uYwotKysrIGIvYXJjaC94ODYva2VybmVsL2NwdS9jb21tb24uYwot QEAgLTE3OTcsNiArMTc5Nyw3IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBlYXJseV9pZGVudGlmeV9j cHUoc3RydWN0IGNwdWluZm9feDg2ICpjKQotIAkJZ2V0X2NwdV92ZW5kb3IoYyk7Ci0gCQlpbnRl bF91bmxvY2tfY3B1aWRfbGVhZnMoYyk7Ci0gCQlnZXRfY3B1X2NhcChjKTsKLSsJCWdldF9tb2Rl bF9uYW1lKGMpOyAvKiBSSEVMOiBnZXQgbW9kZWwgbmFtZSBmb3IgdW5zdXBwb3J0ZWQgY2hlY2sg Ki8KLSAJCXNldHVwX2ZvcmNlX2NwdV9jYXAoWDg2X0ZFQVRVUkVfQ1BVSUQpOwotIAkJZ2V0X2Nw dV9hZGRyZXNzX3NpemVzKGMpOwotIAkJY3B1X3BhcnNlX2Vhcmx5X3BhcmFtKCk7Ci1kaWZmIC0t Z2l0IGEvYXJjaC94ODYva2VybmVsL3NldHVwLmMgYi9hcmNoL3g4Ni9rZXJuZWwvc2V0dXAuYwot aW5kZXggNDY4ODJjZTc5YzNhLi40OTE3M2FiM2ZjZjcgMTAwNjQ0Ci0tLS0gYS9hcmNoL3g4Ni9r ZXJuZWwvc2V0dXAuYwotKysrIGIvYXJjaC94ODYva2VybmVsL3NldHVwLmMKLUBAIC0yMSw2ICsy MSw3IEBACi0gI2luY2x1ZGUgPGxpbnV4L3BjaS5oPgotICNpbmNsdWRlIDxsaW51eC9yYW5kb20u aD4KLSAjaW5jbHVkZSA8bGludXgvcm9vdF9kZXYuaD4KLSsjaW5jbHVkZSA8bGludXgvc2VjdXJp dHkuaD4KLSAjaW5jbHVkZSA8bGludXgvc3RhdGljX2NhbGwuaD4KLSAjaW5jbHVkZSA8bGludXgv c3lzZmIuaD4KLSAjaW5jbHVkZSA8bGludXgvc3dpb3RsYi5oPgotQEAgLTU3LDYgKzU4LDEwIEBA Ci0gI2luY2x1ZGUgPGFzbS90aGVybWFsLmg+Ci0gI2luY2x1ZGUgPGFzbS91bndpbmQuaD4KLSAj aW5jbHVkZSA8YXNtL3ZzeXNjYWxsLmg+Ci0rI2luY2x1ZGUgPGFzbS9pbnRlbC1mYW1pbHkuaD4K LSsjaWYgZGVmaW5lZChDT05GSUdfWDg2X0xPQ0FMX0FQSUMpCi0rI2luY2x1ZGUgPGFzbS9ubWku aD4KLSsjZW5kaWYKLSAKLSAvKgotICAqIG1heF9sb3dfcGZuX21hcHBlZDogaGlnaGVzdCBkaXJl Y3RseSBtYXBwZWQgcGZuIDwgNCBHQgotQEAgLTgyNSw2ICs4MzAsNzkgQEAgc3RhdGljIHZvaWQg X19pbml0IGVhcmx5X3Jlc2VydmVfbWVtb3J5KHZvaWQpCi0gCXRyaW1fc25iX21lbW9yeSgpOwot IH0KLSAKLSsjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSsKLStzdGF0aWMgdm9pZCBy aF9jaGVja19zdXBwb3J0ZWQodm9pZCkKLSt7Ci0rCWJvb2wgZ3Vlc3Q7Ci0rCi0rCWd1ZXN0ID0g KHg4Nl9oeXBlcl90eXBlICE9IFg4Nl9IWVBFUl9OQVRJVkUgfHwgYm9vdF9jcHVfaGFzKFg4Nl9G RUFUVVJFX0hZUEVSVklTT1IpKTsKLSsKLSsJLyogUkhFTCBzdXBwb3J0cyBzaW5nbGUgY3B1IG9u IGd1ZXN0cyBvbmx5ICovCi0rCWlmICgoKHRvcG9sb2d5X251bV90aHJlYWRzX3Blcl9wYWNrYWdl KCkgKiBfX21heF90aHJlYWRzX3Blcl9jb3JlKSA9PSAxKSAmJgotKwkgICAgIWd1ZXN0ICYmICFp c19rZHVtcF9rZXJuZWwoKSkgewotKwkJcHJfY3JpdCgiRGV0ZWN0ZWQgc2luZ2xlIGNwdSBuYXRp dmUgYm9vdC5cbiIpOwotKwkJcHJfY3JpdCgiSW1wb3J0YW50OiAgSW4gdGhpcyBrZXJuZWwsIHNp bmdsZSB0aHJlYWRlZCwgc2luZ2xlIENQVSA2NC1iaXQgcGh5c2ljYWwgc3lzdGVtcyBhcmUgdW5z dXBwb3J0ZWQuIik7Ci0rCX0KLSsKLSsJLyoKLSsJICogSWYgdGhlIFJIRUwga2VybmVsIGRvZXMg bm90IHN1cHBvcnQgdGhpcyBoYXJkd2FyZSwgdGhlIGtlcm5lbCB3aWxsCi0rCSAqIGF0dGVtcHQg dG8gYm9vdCwgYnV0IG5vIHN1cHBvcnQgaXMgcHJvdmlkZWQgZm9yIHRoaXMgaGFyZHdhcmUKLSsJ ICovCi0rCXN3aXRjaCAoYm9vdF9jcHVfZGF0YS54ODZfdmVuZG9yKSB7Ci0rCWNhc2UgWDg2X1ZF TkRPUl9BTUQ6Ci0rCWNhc2UgWDg2X1ZFTkRPUl9JTlRFTDoKLSsJCWJyZWFrOwotKwlkZWZhdWx0 OgotKwkJcHJfY3JpdCgiRGV0ZWN0ZWQgcHJvY2Vzc29yICVzICVzXG4iLAotKwkJCWJvb3RfY3B1 X2RhdGEueDg2X3ZlbmRvcl9pZCwKLSsJCQlib290X2NwdV9kYXRhLng4Nl9tb2RlbF9pZCk7Ci0r CQlicmVhazsKLSsJfQotKwotKwkvKgotKwkgKiBEdWUgdG8gdGhlIGNvbXBsZXhpdHkgb2YgeDg2 IGxhcGljICYgaW9hcGljIGVudW1lcmF0aW9uLCBhbmQgUENJIElSUQotKwkgKiByb3V0aW5nLCBB Q1BJIGlzIHJlcXVpcmVkIGZvciB4ODYuICBhY3BpPW9mZiBpcyBhIHZhbGlkIGRlYnVnIGtlcm5l bAotKwkgKiBwYXJhbWV0ZXIsIHNvIGp1c3QgcHJpbnQgb3V0IGEgbG91ZCB3YXJuaW5nIGluIGNh c2Ugc29tZXRoaW5nCi0rCSAqIGdvZXMgd3JvbmcgKHdoaWNoIGlzIG1vc3Qgb2YgdGhlIHRpbWUp LgotKwkgKi8KLSsJaWYgKGFjcGlfZGlzYWJsZWQgJiYgIWd1ZXN0KQotKwkJcHJfY3JpdCgiQUNQ SSBoYXMgYmVlbiBkaXNhYmxlZCBvciBpcyBub3QgYXZhaWxhYmxlIG9uIHRoaXMgaGFyZHdhcmUu ICBUaGlzIG1heSByZXN1bHQgaW4gYSBzaW5nbGUgY3B1IGJvb3QsIGluY29ycmVjdCBQQ0kgSVJR IHJvdXRpbmcsIG9yIGJvb3QgZmFpbHVyZS5cbiIpOwotKwotKwkvKgotKwkgKiB4ODZfNjQgbWlj cm9hcmNoaXRlY3R1cmUgbGV2ZWxzOgotKwkgKiAJaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dp a2kvWDg2LTY0I01pY3JvYXJjaGl0ZWN0dXJlX2xldmVscwotKwkgKgotKwkgKiBSSEVMOSBoYXMg YSBtaW5pbXVtIG9mIHRoZSB4ODZfNjQtdjIgbWljcm9hcmNoaXRlY3R1cmUKLSsJICogUkhFTDEw IGhhcyBhIG1pbmltdW0gb2YgdGhlIHg4Nl82NC12MyBtaWNyb2FyY2hpdGVjdHVyZQotKwkgKi8K LSsKLSsJaWYgKCFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQ1gxNikgfHwgLyogQ01QWENIRzE2 QiAqLwotKwkgICAgIWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9MQUhGX0xNKSB8fCAvKiBMQUhG LVNBSEYgKi8KLSsJICAgICFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfUE9QQ05UKSB8fAotKwkg ICAgIWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YTU0zKSB8fCAvKiBTU0UtMyAqLwotKwkgICAg IWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YTU00XzEpIHx8IC8qIFNTRTRfMSAqLwotKwkgICAg IWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YTU00XzIpIHx8IC8qIFNTRTRfMiAqLwotKwkgICAg IWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9TU1NFMykpIHsKLSsJCW1hcmtfaGFyZHdhcmVfZGVw cmVjYXRlZCgieDg2XzY0LXYxIiwgIiVzOiVzIiwKLSsJCQkJCSBib290X2NwdV9kYXRhLng4Nl92 ZW5kb3JfaWQsIGJvb3RfY3B1X2RhdGEueDg2X21vZGVsX2lkKTsKLSsJfSBlbHNlIGlmICghYm9v dF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWCkgfHwKLSsJCSAgICFib290X2NwdV9oYXMoWDg2X0ZF QVRVUkVfQVZYMikgfHwKLSsJCSAgICFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQk1JMSkgfHwK LSsJCSAgICFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfQk1JMikgfHwKLSsJCSAgICFib290X2Nw dV9oYXMoWDg2X0ZFQVRVUkVfRjE2QykgfHwKLSsJCSAgICFib290X2NwdV9oYXMoWDg2X0ZFQVRV UkVfRk1BKSB8fAotKwkJICAgLyogTFpDTlQgaXMgbm90IGV4cGxpY2l0bHkgbGlzdGVkLCBidXQg YXBwZWFycyB0byBiZSBwYWlyZWQgd2l0aCBCTUkyICovCi0rCQkgICAhYm9vdF9jcHVfaGFzKFg4 Nl9GRUFUVVJFX01PVkJFKSB8fAotKwkJICAgIWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9YU0FW RSkpIHsKLSsJCW1hcmtfaGFyZHdhcmVfZGVwcmVjYXRlZCgieDg2XzY0LXYyIiwgIiVzOiVzIiwK LSsJCQkJCSBib290X2NwdV9kYXRhLng4Nl92ZW5kb3JfaWQsIGJvb3RfY3B1X2RhdGEueDg2X21v ZGVsX2lkKTsKLSsJfQotK30KLSsjZWxzZQotKyNkZWZpbmUgcmhfY2hlY2tfc3VwcG9ydGVkKCkK LSsjZW5kaWYKLSsKLSAvKgotICAqIER1bXAgb3V0IGtlcm5lbCBvZmZzZXQgaW5mb3JtYXRpb24g b24gcGFuaWMuCi0gICovCi1AQCAtOTk1LDYgKzEwNzMsMTMgQEAgdm9pZCBfX2luaXQgc2V0dXBf YXJjaChjaGFyICoqY21kbGluZV9wKQotIAlpZiAoZWZpX2VuYWJsZWQoRUZJX0JPT1QpKQotIAkJ ZWZpX2luaXQoKTsKLSAKLSsJZWZpX3NldF9zZWN1cmVfYm9vdChib290X3BhcmFtcy5zZWN1cmVf Ym9vdCk7Ci0rCi0rI2lmZGVmIENPTkZJR19MT0NLX0RPV05fSU5fRUZJX1NFQ1VSRV9CT09UCi0r CWlmIChlZmlfZW5hYmxlZChFRklfU0VDVVJFX0JPT1QpKQotKwkJc2VjdXJpdHlfbG9ja19rZXJu ZWxfZG93bigiRUZJIFNlY3VyZSBCb290IG1vZGUiLCBMT0NLRE9XTl9JTlRFR1JJVFlfTUFYKTsK LSsjZW5kaWYKLSsKLSAJcmVzZXJ2ZV9pYmZ0X3JlZ2lvbigpOwotIAl4ODZfaW5pdC5yZXNvdXJj ZXMuZG1pX3NldHVwKCk7Ci0gCi1AQCAtMTE1NiwxOSArMTI0MSw3IEBAIHZvaWQgX19pbml0IHNl dHVwX2FyY2goY2hhciAqKmNtZGxpbmVfcCkKLSAJLyogQWxsb2NhdGUgYmlnZ2VyIGxvZyBidWZm ZXIgKi8KLSAJc2V0dXBfbG9nX2J1ZigxKTsKLSAKLS0JaWYgKGVmaV9lbmFibGVkKEVGSV9CT09U KSkgewotLQkJc3dpdGNoIChib290X3BhcmFtcy5zZWN1cmVfYm9vdCkgewotLQkJY2FzZSBlZmlf c2VjdXJlYm9vdF9tb2RlX2Rpc2FibGVkOgotLQkJCXByX2luZm8oIlNlY3VyZSBib290IGRpc2Fi bGVkXG4iKTsKLS0JCQlicmVhazsKLS0JCWNhc2UgZWZpX3NlY3VyZWJvb3RfbW9kZV9lbmFibGVk OgotLQkJCXByX2luZm8oIlNlY3VyZSBib290IGVuYWJsZWRcbiIpOwotLQkJCWJyZWFrOwotLQkJ ZGVmYXVsdDoKLS0JCQlwcl9pbmZvKCJTZWN1cmUgYm9vdCBjb3VsZCBub3QgYmUgZGV0ZXJtaW5l ZFxuIik7Ci0tCQkJYnJlYWs7Ci0tCQl9Ci0tCX0KLSsJZWZpX3NldF9zZWN1cmVfYm9vdChib290 X3BhcmFtcy5zZWN1cmVfYm9vdCk7Ci0gCi0gCXJlc2VydmVfaW5pdHJkKCk7Ci0gCi1AQCAtMTI3 NSw2ICsxMzQ4LDggQEAgdm9pZCBfX2luaXQgc2V0dXBfYXJjaChjaGFyICoqY21kbGluZV9wKQot IAkJZWZpX2FwcGx5X21lbW1hcF9xdWlya3MoKTsKLSAjZW5kaWYKLSAKLSsJcmhfY2hlY2tfc3Vw cG9ydGVkKCk7Ci0rCi0gCXVud2luZF9pbml0KCk7Ci0gfQotIAotZGlmZiAtLWdpdCBhL2NyeXB0 by9ha2NpcGhlci5jIGIvY3J5cHRvL2FrY2lwaGVyLmMKLWluZGV4IDYzMGJiMTk3MzhiZS4uOGRh N2VlZGNlMzFlIDEwMDY0NAotLS0tIGEvY3J5cHRvL2FrY2lwaGVyLmMKLSsrKyBiL2NyeXB0by9h a2NpcGhlci5jCi1AQCAtMTM4LDggKzEzOCw3IEBAIGludCBjcnlwdG9fcmVnaXN0ZXJfYWtjaXBo ZXIoc3RydWN0IGFrY2lwaGVyX2FsZyAqYWxnKQotIAotIAlpZiAoIWFsZy0+ZW5jcnlwdCkKLSAJ CWFsZy0+ZW5jcnlwdCA9IGFrY2lwaGVyX2RlZmF1bHRfb3A7Ci0tCWlmICghYWxnLT5kZWNyeXB0 KQotLQkJYWxnLT5kZWNyeXB0ID0gYWtjaXBoZXJfZGVmYXVsdF9vcDsKLSsJYWxnLT5kZWNyeXB0 ID0gYWtjaXBoZXJfZGVmYXVsdF9vcDsKLSAJaWYgKCFhbGctPnNldF9wcml2X2tleSkKLSAJCWFs Zy0+c2V0X3ByaXZfa2V5ID0gYWtjaXBoZXJfZGVmYXVsdF9zZXRfa2V5OwotIAotZGlmZiAtLWdp dCBhL2NyeXB0by9kaC5jIGIvY3J5cHRvL2RoLmMKLWluZGV4IDdhZDQ3Njg3MTZjOC4uMDFjY2My NGRiMDc0IDEwMDY0NAotLS0tIGEvY3J5cHRvL2RoLmMKLSsrKyBiL2NyeXB0by9kaC5jCi1AQCAt MjI3LDEwICsyMjcsMzUgQEAgc3RhdGljIGludCBkaF9jb21wdXRlX3ZhbHVlKHN0cnVjdCBrcHBf cmVxdWVzdCAqcmVxKQotIAotIAkJLyogU1A4MDAtNTZBIHJldiAzIDUuNi4yLjEuMyBrZXkgY2hl Y2sgKi8KLSAJCX0gZWxzZSB7Ci0rCQkJTVBJIHZhbF9wY3Q7Ci0rCi0gCQkJaWYgKGRoX2lzX3B1 YmtleV92YWxpZChjdHgsIHZhbCkpIHsKLSAJCQkJcmV0ID0gLUVBR0FJTjsKLSAJCQkJZ290byBl cnJfZnJlZV92YWw7Ci0gCQkJfQotKwotKwkJCS8qCi0rCQkJICogU1A4MDAtNTZBcmV2MywgNS42 LjIuMS40OiAoIk93bmVyIEFzc3VyYW5jZQotKwkJCSAqIG9mIFBhaXItd2lzZSBDb25zaXN0ZW5j eSIpOiByZWNvbXB1dGUgdGhlCi0rCQkJICogcHVibGljIGtleSBhbmQgY2hlY2sgaWYgdGhlIHJl c3VsdHMgbWF0Y2guCi0rCQkJICovCi0rCQkJdmFsX3BjdCA9IG1waV9hbGxvYygwKTsKLSsJCQlp ZiAoIXZhbF9wY3QpIHsKLSsJCQkJcmV0ID0gLUVOT01FTTsKLSsJCQkJZ290byBlcnJfZnJlZV92 YWw7Ci0rCQkJfQotKwotKwkJCXJldCA9IF9jb21wdXRlX3ZhbChjdHgsIGJhc2UsIHZhbF9wY3Qp OwotKwkJCWlmIChyZXQpIHsKLSsJCQkJbXBpX2ZyZWUodmFsX3BjdCk7Ci0rCQkJCWdvdG8gZXJy X2ZyZWVfdmFsOwotKwkJCX0KLSsKLSsJCQlpZiAobXBpX2NtcCh2YWwsIHZhbF9wY3QpICE9IDAp IHsKLSsJCQkJZmlwc19mYWlsX25vdGlmeSgpOwotKwkJCQlwYW5pYygiZGg6IHBhaXItd2lzZSBj b25zaXN0ZW5jeSB0ZXN0IGZhaWxlZFxuIik7Ci0rCQkJfQotKwkJCW1waV9mcmVlKHZhbF9wY3Qp OwotIAkJfQotIAl9Ci0gCi1kaWZmIC0tZ2l0IGEvY3J5cHRvL3NlcWl2LmMgYi9jcnlwdG8vc2Vx aXYuYwotaW5kZXggNjc4YmI0MTQ1ZDc4Li5mY2MwNTllN2QzZGIgMTAwNjQ0Ci0tLS0gYS9jcnlw dG8vc2VxaXYuYwotKysrIGIvY3J5cHRvL3NlcWl2LmMKLUBAIC0xMjMsNiArMTIzLDE5IEBAIHN0 YXRpYyBpbnQgc2VxaXZfYWVhZF9kZWNyeXB0KHN0cnVjdCBhZWFkX3JlcXVlc3QgKnJlcSkKLSAJ cmV0dXJuIGNyeXB0b19hZWFkX2RlY3J5cHQoc3VicmVxKTsKLSB9Ci0gCi0rc3RhdGljIGludCBh ZWFkX2luaXRfc2VxaXYoc3RydWN0IGNyeXB0b19hZWFkICphZWFkKQotK3sKLSsJaW50IGVycjsK LSsKLSsJZXJyID0gYWVhZF9pbml0X2dlbml2KGFlYWQpOwotKwlpZiAoZXJyKQotKwkJcmV0dXJu IGVycjsKLSsKLSsJY3J5cHRvX2FlYWRfc2V0X2ZsYWdzKGFlYWQsIENSWVBUT19URk1fRklQU19D T01QTElBTkNFKTsKLSsKLSsJcmV0dXJuIDA7Ci0rfQotKwotIHN0YXRpYyBpbnQgc2VxaXZfYWVh ZF9jcmVhdGUoc3RydWN0IGNyeXB0b190ZW1wbGF0ZSAqdG1wbCwgc3RydWN0IHJ0YXR0ciAqKnRi KQotIHsKLSAJc3RydWN0IGFlYWRfaW5zdGFuY2UgKmluc3Q7Ci1AQCAtMTQwLDcgKzE1Myw3IEBA IHN0YXRpYyBpbnQgc2VxaXZfYWVhZF9jcmVhdGUoc3RydWN0IGNyeXB0b190ZW1wbGF0ZSAqdG1w bCwgc3RydWN0IHJ0YXR0ciAqKnRiKQotIAlpbnN0LT5hbGcuZW5jcnlwdCA9IHNlcWl2X2FlYWRf ZW5jcnlwdDsKLSAJaW5zdC0+YWxnLmRlY3J5cHQgPSBzZXFpdl9hZWFkX2RlY3J5cHQ7Ci0gCi0t CWluc3QtPmFsZy5pbml0ID0gYWVhZF9pbml0X2dlbml2OwotKwlpbnN0LT5hbGcuaW5pdCA9IGFl YWRfaW5pdF9zZXFpdjsKLSAJaW5zdC0+YWxnLmV4aXQgPSBhZWFkX2V4aXRfZ2VuaXY7Ci0gCi0g CWluc3QtPmFsZy5iYXNlLmNyYV9jdHhzaXplID0gc2l6ZW9mKHN0cnVjdCBhZWFkX2dlbml2X2N0 eCk7Ci1kaWZmIC0tZ2l0IGEvY3J5cHRvL3NpZy5jIGIvY3J5cHRvL3NpZy5jCi1pbmRleCA3ZDIw NDhkYTVjM2EuLjZiNGUyMTYzZmNjNSAxMDA2NDQKLS0tLSBhL2NyeXB0by9zaWcuYwotKysrIGIv Y3J5cHRvL3NpZy5jCi1AQCAtMTEyLDggKzExMiw3IEBAIHN0YXRpYyBpbnQgc2lnX3ByZXBhcmVf YWxnKHN0cnVjdCBzaWdfYWxnICphbGcpCi0gewotIAlzdHJ1Y3QgY3J5cHRvX2FsZyAqYmFzZSA9 ICZhbGctPmJhc2U7Ci0gCi0tCWlmICghYWxnLT5zaWduKQotLQkJYWxnLT5zaWduID0gc2lnX2Rl ZmF1bHRfc2lnbjsKLSsJYWxnLT5zaWduID0gc2lnX2RlZmF1bHRfc2lnbjsKLSAJaWYgKCFhbGct PnZlcmlmeSkKLSAJCWFsZy0+dmVyaWZ5ID0gc2lnX2RlZmF1bHRfdmVyaWZ5OwotIAlpZiAoIWFs Zy0+c2V0X3ByaXZfa2V5KQotZGlmZiAtLWdpdCBhL2NyeXB0by90ZXN0bWdyLmMgYi9jcnlwdG8v dGVzdG1nci5jCi1pbmRleCA0OTU4MjExZmJmYTkuLmVlNmQzNDg4NTY5NiAxMDA2NDQKLS0tLSBh L2NyeXB0by90ZXN0bWdyLmMKLSsrKyBiL2NyeXB0by90ZXN0bWdyLmMKLUBAIC0zODMxLDcgKzM4 MzEsNyBAQCBzdGF0aWMgaW50IHRlc3RfYWtjaXBoZXJfb25lKHN0cnVjdCBjcnlwdG9fYWtjaXBo ZXIgKnRmbSwKLSAJICogRG9uJ3QgaW52b2tlIGRlY3J5cHQgdGVzdCB3aGljaCByZXF1aXJlcyBh IHByaXZhdGUga2V5Ci0gCSAqIGZvciB2ZWN0b3JzIHdpdGggb25seSBhIHB1YmxpYyBrZXkuCi0g CSAqLwotLQlpZiAodmVjcy0+cHVibGljX2tleV92ZWMpIHsKLSsJaWYgKDEgfHwgdmVjcy0+cHVi bGljX2tleV92ZWMpIHsKLSAJCWVyciA9IDA7Ci0gCQlnb3RvIGZyZWVfYWxsOwotIAl9Ci1AQCAt Mzk2Nyw3ICszOTY3LDcgQEAgc3RhdGljIGludCB0ZXN0X3NpZ19vbmUoc3RydWN0IGNyeXB0b19z aWcgKnRmbSwgY29uc3Qgc3RydWN0IHNpZ190ZXN0dmVjICp2ZWNzKQotIAkgKiBEb24ndCBpbnZv a2Ugc2lnbiB0ZXN0ICh3aGljaCByZXF1aXJlcyBhIHByaXZhdGUga2V5KQotIAkgKiBmb3IgdmVj dG9ycyB3aXRoIG9ubHkgYSBwdWJsaWMga2V5LgotIAkgKi8KLS0JaWYgKHZlY3MtPnB1YmxpY19r ZXlfdmVjKQotKwlpZiAoMSB8fCB2ZWNzLT5wdWJsaWNfa2V5X3ZlYykKLSAJCXJldHVybiAwOwot IAotIAlzaWdfc2l6ZSA9IGNyeXB0b19zaWdfbWF4c2l6ZSh0Zm0pOwotQEAgLTQ3OTAsMTQgKzQ3 OTAsMTIgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbGdfdGVzdF9kZXNjIGFsZ190ZXN0X2Rlc2Nz W10gPSB7Ci0gCX0sIHsKLSAJCS5hbGcgPSAiZWNkaC1uaXN0LXAyNTYiLAotIAkJLnRlc3QgPSBh bGdfdGVzdF9rcHAsCi0tCQkuZmlwc19hbGxvd2VkID0gMSwKLSAJCS5zdWl0ZSA9IHsKLSAJCQku a3BwID0gX19WRUNTKGVjZGhfcDI1Nl90dl90ZW1wbGF0ZSkKLSAJCX0KLSAJfSwgewotIAkJLmFs ZyA9ICJlY2RoLW5pc3QtcDM4NCIsCi0gCQkudGVzdCA9IGFsZ190ZXN0X2twcCwKLS0JCS5maXBz X2FsbG93ZWQgPSAxLAotIAkJLnN1aXRlID0gewotIAkJCS5rcHAgPSBfX1ZFQ1MoZWNkaF9wMzg0 X3R2X3RlbXBsYXRlKQotIAkJfQotZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNwaS9hcGVpL2hlc3Qu YyBiL2RyaXZlcnMvYWNwaS9hcGVpL2hlc3QuYwotaW5kZXggMjBkNzU3Njg3ZTNkLi45MGExM2Yy MGYwNTIgMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL2FjcGkvYXBlaS9oZXN0LmMKLSsrKyBiL2RyaXZl cnMvYWNwaS9hcGVpL2hlc3QuYwotQEAgLTE0Miw2ICsxNDIsMTQgQEAgc3RhdGljIGludCBhcGVp X2hlc3RfcGFyc2UoYXBlaV9oZXN0X2Z1bmNfdCBmdW5jLCB2b2lkICpkYXRhKQotIAlpZiAoaGVz dF9kaXNhYmxlIHx8ICFoZXN0X3RhYikKLSAJCXJldHVybiAtRUlOVkFMOwotIAotKyNpZmRlZiBD T05GSUdfQVJNNjQKLSsJLyogSWdub3JlIGJyb2tlbiBmaXJtd2FyZSAqLwotKwlpZiAoIXN0cm5j bXAoaGVzdF90YWItPmhlYWRlci5vZW1faWQsICJIUEUgICAiLCA2KSAmJgotKwkgICAgIXN0cm5j bXAoaGVzdF90YWItPmhlYWRlci5vZW1fdGFibGVfaWQsICJQcm9MaWFudCIsIDgpICYmCi0rCSAg ICBNSURSX0lNUExFTUVOVE9SKHJlYWRfY3B1aWRfaWQoKSkgPT0gQVJNX0NQVV9JTVBfQVBNKQot KwkJcmV0dXJuIC1FSU5WQUw7Ci0rI2VuZGlmCi0rCi0gCWhlc3RfaGRyID0gKHN0cnVjdCBhY3Bp X2hlc3RfaGVhZGVyICopKGhlc3RfdGFiICsgMSk7Ci0gCWZvciAoaSA9IDA7IGkgPCBoZXN0X3Rh Yi0+ZXJyb3Jfc291cmNlX2NvdW50OyBpKyspIHsKLSAJCWxlbiA9IGhlc3RfZXNyY19sZW4oaGVz dF9oZHIpOwotZGlmZiAtLWdpdCBhL2RyaXZlcnMvYWNwaS9pcnEuYyBiL2RyaXZlcnMvYWNwaS9p cnEuYwotaW5kZXggZDE1OTUxNTZjODZhLi45NDg1MjEyZjFhNmQgMTAwNjQ0Ci0tLS0gYS9kcml2 ZXJzL2FjcGkvaXJxLmMKLSsrKyBiL2RyaXZlcnMvYWNwaS9pcnEuYwotQEAgLTE0Myw2ICsxNDMs NyBAQCBzdHJ1Y3QgYWNwaV9pcnFfcGFyc2Vfb25lX2N0eCB7Ci0gCXVuc2lnbmVkIGludCBpbmRl eDsKLSAJdW5zaWduZWQgbG9uZyAqcmVzX2ZsYWdzOwotIAlzdHJ1Y3QgaXJxX2Z3c3BlYyAqZndz cGVjOwotKwlib29sIHNraXBfcHJvZHVjZXJfY2hlY2s7Ci0gfTsKLSAKLSAvKioKLUBAIC0yMTYs NyArMjE3LDggQEAgc3RhdGljIGFjcGlfc3RhdHVzIGFjcGlfaXJxX3BhcnNlX29uZV9jYihzdHJ1 Y3QgYWNwaV9yZXNvdXJjZSAqYXJlcywKLSAJCXJldHVybiBBRV9DVFJMX1RFUk1JTkFURTsKLSAJ Y2FzZSBBQ1BJX1JFU09VUkNFX1RZUEVfRVhURU5ERURfSVJROgotIAkJZWlycSA9ICZhcmVzLT5k YXRhLmV4dGVuZGVkX2lycTsKLS0JCWlmIChlaXJxLT5wcm9kdWNlcl9jb25zdW1lciA9PSBBQ1BJ X1BST0RVQ0VSKQotKwkJaWYgKCFjdHgtPnNraXBfcHJvZHVjZXJfY2hlY2sgJiYKLSsJCSAgICBl aXJxLT5wcm9kdWNlcl9jb25zdW1lciA9PSBBQ1BJX1BST0RVQ0VSKQotIAkJCXJldHVybiBBRV9P SzsKLSAJCWlmIChjdHgtPmluZGV4ID49IGVpcnEtPmludGVycnVwdF9jb3VudCkgewotIAkJCWN0 eC0+aW5kZXggLT0gZWlycS0+aW50ZXJydXB0X2NvdW50OwotQEAgLTI1Miw4ICsyNTQsMTkgQEAg c3RhdGljIGFjcGlfc3RhdHVzIGFjcGlfaXJxX3BhcnNlX29uZV9jYihzdHJ1Y3QgYWNwaV9yZXNv dXJjZSAqYXJlcywKLSBzdGF0aWMgaW50IGFjcGlfaXJxX3BhcnNlX29uZShhY3BpX2hhbmRsZSBo YW5kbGUsIHVuc2lnbmVkIGludCBpbmRleCwKLSAJCQkgICAgICBzdHJ1Y3QgaXJxX2Z3c3BlYyAq ZndzcGVjLCB1bnNpZ25lZCBsb25nICpmbGFncykKLSB7Ci0tCXN0cnVjdCBhY3BpX2lycV9wYXJz ZV9vbmVfY3R4IGN0eCA9IHsgLUVJTlZBTCwgaW5kZXgsIGZsYWdzLCBmd3NwZWMgfTsKLSsJc3Ry dWN0IGFjcGlfaXJxX3BhcnNlX29uZV9jdHggY3R4ID0geyAtRUlOVkFMLCBpbmRleCwgZmxhZ3Ms IGZ3c3BlYywgZmFsc2UgfTsKLSAKLSsJLyoKLSsJICogRmlybXdhcmUgb24gYXJtNjQtYmFzZWQg SFBFIG00MDAgcGxhdGZvcm0gaW5jb3JyZWN0bHkgbWFya3MKLSsJICogaXRzIFVBUlQgaW50ZXJy dXB0IGFzIEFDUElfUFJPRFVDRVIgcmF0aGVyIHRoYW4gQUNQSV9DT05TVU1FUi4KLSsJICogRG9u J3QgZG8gdGhlIHByb2R1Y2VyL2NvbnN1bWVyIGNoZWNrIGZvciB0aGF0IGRldmljZS4KLSsJICov Ci0rCWlmIChJU19FTkFCTEVEKENPTkZJR19BUk02NCkpIHsKLSsJCXN0cnVjdCBhY3BpX2Rldmlj ZSAqYWRldiA9IGFjcGlfZ2V0X2FjcGlfZGV2KGhhbmRsZSk7Ci0rCi0rCQlpZiAoYWRldiAmJiAh c3RyY21wKGFjcGlfZGV2aWNlX2hpZChhZGV2KSwgIkFQTUMwRDA4IikpCi0rCQkJY3R4LnNraXBf cHJvZHVjZXJfY2hlY2sgPSB0cnVlOwotKwl9Ci0gCWFjcGlfd2Fsa19yZXNvdXJjZXMoaGFuZGxl LCBNRVRIT0RfTkFNRV9fQ1JTLCBhY3BpX2lycV9wYXJzZV9vbmVfY2IsICZjdHgpOwotIAlyZXR1 cm4gY3R4LnJjOwotIH0KLWRpZmYgLS1naXQgYS9kcml2ZXJzL2FjcGkvc2Nhbi5jIGIvZHJpdmVy cy9hY3BpL3NjYW4uYwotaW5kZXggOWE3YWMyZWI5Y2UwLi42NTU2YzNkN2IyNjkgMTAwNjQ0Ci0t LS0gYS9kcml2ZXJzL2FjcGkvc2Nhbi5jCi0rKysgYi9kcml2ZXJzL2FjcGkvc2Nhbi5jCi1AQCAt MTc5NCw2ICsxNzk0LDE1IEBAIHN0YXRpYyBib29sIGFjcGlfZGV2aWNlX2VudW1lcmF0aW9uX2J5 X3BhcmVudChzdHJ1Y3QgYWNwaV9kZXZpY2UgKmRldmljZSkKLSAJaWYgKCFhY3BpX21hdGNoX2Rl dmljZV9pZHMoZGV2aWNlLCBpZ25vcmVfc2VyaWFsX2J1c19pZHMpKQotIAkJcmV0dXJuIGZhbHNl OwotIAotKwkvKgotKwkgKiBGaXJtd2FyZSBvbiBzb21lIGFybTY0IFgtR2VuZSBwbGF0Zm9ybXMg d2lsbCBtYWtlIHRoZSBVQVJUCi0rCSAqIGRldmljZSBhcHBlYXIgYXMgYm90aCBhIFVBUlQgYW5k IGEgc2xhdmUgb2YgdGhhdCBVQVJULiBKdXN0Ci0rCSAqIGJhaWwgb3V0IGhlcmUgZm9yIFgtR2Vu ZSBVQVJUcy4KLSsJICovCi0rCWlmIChJU19FTkFCTEVEKENPTkZJR19BUk02NCkgJiYKLSsJICAg ICFzdHJjbXAoYWNwaV9kZXZpY2VfaGlkKGRldmljZSksICJBUE1DMEQwOCIpKQotKwkJcmV0dXJu IGZhbHNlOwotKwotIAlJTklUX0xJU1RfSEVBRCgmcmVzb3VyY2VfbGlzdCk7Ci0gCWFjcGlfZGV2 X2dldF9yZXNvdXJjZXMoZGV2aWNlLCAmcmVzb3VyY2VfbGlzdCwKLSAJCQkgICAgICAgYWNwaV9j aGVja19zZXJpYWxfYnVzX3NsYXZlLAotZGlmZiAtLWdpdCBhL2RyaXZlcnMvYXRhL2xpYmFoY2ku YyBiL2RyaXZlcnMvYXRhL2xpYmFoY2kuYwotaW5kZXggNmQ3MmViMDE3YjQ5Li4wYTY3MDFlYjhk MzcgMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL2F0YS9saWJhaGNpLmMKLSsrKyBiL2RyaXZlcnMvYXRh L2xpYmFoY2kuYwotQEAgLTcyNyw2ICs3MjcsMjQgQEAgaW50IGFoY2lfc3RvcF9lbmdpbmUoc3Ry dWN0IGF0YV9wb3J0ICphcCkKLSAJdG1wICY9IH5QT1JUX0NNRF9TVEFSVDsKLSAJd3JpdGVsKHRt cCwgcG9ydF9tbWlvICsgUE9SVF9DTUQpOwotIAotKyNpZmRlZiBDT05GSUdfQVJNNjQKLSsJLyog UmV2IEF4IG9mIENhdml1bSBDTjk5WFggbmVlZHMgYSBoYWNrIGZvciBwb3J0IHN0b3AgKi8KLSsJ aWYgKGRldl9pc19wY2koYXAtPmhvc3QtPmRldikgJiYKLSsJICAgIHRvX3BjaV9kZXYoYXAtPmhv c3QtPmRldiktPnZlbmRvciA9PSAweDE0ZTQgJiYKLSsJICAgIHRvX3BjaV9kZXYoYXAtPmhvc3Qt PmRldiktPmRldmljZSA9PSAweDkwMjcgJiYKLSsJICAgIG1pZHJfaXNfY3B1X21vZGVsX3Jhbmdl KHJlYWRfY3B1aWRfaWQoKSwKLSsJCQlNSURSX0NQVV9NT0RFTChBUk1fQ1BVX0lNUF9CUkNNLCBC UkNNX0NQVV9QQVJUX1ZVTENBTiksCi0rCQkJTUlEUl9DUFVfVkFSX1JFVigwLCAwKSwKLSsJCQlN SURSX0NQVV9WQVJfUkVWKDAsIE1JRFJfUkVWSVNJT05fTUFTSykpKSB7Ci0rCQl0bXAgPSByZWFk bChocHJpdi0+bW1pbyArIDB4ODAwMCk7Ci0rCQl1ZGVsYXkoMTAwKTsKLSsJCXdyaXRlbCh0bXAg fCAoMSA8PCAyNiksIGhwcml2LT5tbWlvICsgMHg4MDAwKTsKLSsJCXVkZWxheSgxMDApOwotKwkJ d3JpdGVsKHRtcCAmIH4oMSA8PCAyNiksIGhwcml2LT5tbWlvICsgMHg4MDAwKTsKLSsJCWRldl93 YXJuKGFwLT5ob3N0LT5kZXYsICJDTjk5WFggU0FUQSByZXNldCB3b3JrYXJvdW5kIGFwcGxpZWRc biIpOwotKwl9Ci0rI2VuZGlmCi0rCi0gCS8qIHdhaXQgZm9yIGVuZ2luZSB0byBzdG9wLiBUaGlz IGNvdWxkIGJlIGFzIGxvbmcgYXMgNTAwIG1zZWMgKi8KLSAJdG1wID0gYXRhX3dhaXRfcmVnaXN0 ZXIoYXAsIHBvcnRfbW1pbyArIFBPUlRfQ01ELAotIAkJCQlQT1JUX0NNRF9MSVNUX09OLCBQT1JU X0NNRF9MSVNUX09OLCAxLCA1MDApOwotZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2hhci9pcG1pL2lw bWlfZG1pLmMgYi9kcml2ZXJzL2NoYXIvaXBtaS9pcG1pX2RtaS5jCi1pbmRleCA1MDVlMzI5MTFj MzQuLjI2ZjdlZTBjY2Y0MCAxMDA2NDQKLS0tLSBhL2RyaXZlcnMvY2hhci9pcG1pL2lwbWlfZG1p LmMKLSsrKyBiL2RyaXZlcnMvY2hhci9pcG1pL2lwbWlfZG1pLmMKLUBAIC0yMTUsNiArMjE1LDIx IEBAIHN0YXRpYyBpbnQgX19pbml0IHNjYW5fZm9yX2RtaV9pcG1pKHZvaWQpCi0gewotIAljb25z dCBzdHJ1Y3QgZG1pX2RldmljZSAqZGV2ID0gTlVMTDsKLSAKLSsjaWZkZWYgQ09ORklHX0FSTTY0 Ci0rCS8qIFJIRUwtb25seQotKwkgKiBJZiB0aGlzIGlzIEFSTS1iYXNlZCBIUEUgbTQwMCwgcmV0 dXJuIG5vdywgYmVjYXVzZSB0aGF0IHBsYXRmb3JtCi0rCSAqIHJlcG9ydHMgdGhlIGhvc3Qtc2lk ZSBpcG1pIGFkZHJlc3MgYXMgaW50ZWwgcG9ydC1pbyBzcGFjZSwgd2hpY2gKLSsJICogZG9lcyBu b3QgZXhpc3QgaW4gdGhlIEFSTSBhcmNoaXRlY3R1cmUuCi0rCSAqLwotKwljb25zdCBjaGFyICpk bWlzdHIgPSBkbWlfZ2V0X3N5c3RlbV9pbmZvKERNSV9QUk9EVUNUX05BTUUpOwotKwotKwlpZiAo ZG1pc3RyICYmIChzdHJjbXAoIlByb0xpYW50IG00MDAgU2VydmVyIiwgZG1pc3RyKSA9PSAwKSkg ewotKwkJcHJfZGVidWcoIiVzIGRvZXMgbm90IHN1cHBvcnQgaG9zdCBpcG1pXG4iLCBkbWlzdHIp OwotKwkJcmV0dXJuIDA7Ci0rCX0KLSsJLyogRU5EIFJIRUwtb25seSAqLwotKyNlbmRpZgotKwot IAl3aGlsZSAoKGRldiA9IGRtaV9maW5kX2RldmljZShETUlfREVWX1RZUEVfSVBNSSwgTlVMTCwg ZGV2KSkpCi0gCQlkbWlfZGVjb2RlX2lwbWkoKGNvbnN0IHN0cnVjdCBkbWlfaGVhZGVyICopIGRl di0+ZGV2aWNlX2RhdGEpOwotIAotZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2hhci9pcG1pL2lwbWlf bXNnaGFuZGxlci5jIGIvZHJpdmVycy9jaGFyL2lwbWkvaXBtaV9tc2doYW5kbGVyLmMKLWluZGV4 IGFiNGM4NWYzZDZmZS4uOTJkZTExNjVmNmVmIDEwMDY0NAotLS0tIGEvZHJpdmVycy9jaGFyL2lw bWkvaXBtaV9tc2doYW5kbGVyLmMKLSsrKyBiL2RyaXZlcnMvY2hhci9pcG1pL2lwbWlfbXNnaGFu ZGxlci5jCi1AQCAtMzQsNiArMzQsNyBAQAotICNpbmNsdWRlIDxsaW51eC91dWlkLmg+Ci0gI2lu Y2x1ZGUgPGxpbnV4L25vc3BlYy5oPgotICNpbmNsdWRlIDxsaW51eC92bWFsbG9jLmg+Ci0rI2lu Y2x1ZGUgPGxpbnV4L2RtaS5oPgotICNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgotIAotICNkZWZp bmUgSVBNSV9EUklWRVJfVkVSU0lPTiAiMzkuMiIKLUBAIC01NjQzLDggKzU2NDQsMjEgQEAgc3Rh dGljIGludCBfX2luaXQgaXBtaV9pbml0X21zZ2hhbmRsZXJfbW9kKHZvaWQpCi0gewotIAlpbnQg cnY7Ci0gCi0tCXByX2luZm8oInZlcnNpb24gIiBJUE1JX0RSSVZFUl9WRVJTSU9OICJcbiIpOwot KyNpZmRlZiBDT05GSUdfQVJNNjQKLSsJLyogUkhFTC1vbmx5Ci0rCSAqIElmIHRoaXMgaXMgQVJN LWJhc2VkIEhQRSBtNDAwLCByZXR1cm4gbm93LCBiZWNhdXNlIHRoYXQgcGxhdGZvcm0KLSsJICog cmVwb3J0cyB0aGUgaG9zdC1zaWRlIGlwbWkgYWRkcmVzcyBhcyBpbnRlbCBwb3J0LWlvIHNwYWNl LCB3aGljaAotKwkgKiBkb2VzIG5vdCBleGlzdCBpbiB0aGUgQVJNIGFyY2hpdGVjdHVyZS4KLSsJ ICovCi0rCWNvbnN0IGNoYXIgKmRtaXN0ciA9IGRtaV9nZXRfc3lzdGVtX2luZm8oRE1JX1BST0RV Q1RfTkFNRSk7Ci0gCi0rCWlmIChkbWlzdHIgJiYgKHN0cmNtcCgiUHJvTGlhbnQgbTQwMCBTZXJ2 ZXIiLCBkbWlzdHIpID09IDApKSB7Ci0rCQlwcl9kZWJ1ZygiJXMgZG9lcyBub3Qgc3VwcG9ydCBo b3N0IGlwbWlcbiIsIGRtaXN0cik7Ci0rCQlyZXR1cm4gLUVOT1NZUzsKLSsJfQotKwkvKiBFTkQg UkhFTC1vbmx5ICovCi0rI2VuZGlmCi0rCXByX2luZm8oInZlcnNpb24gIiBJUE1JX0RSSVZFUl9W RVJTSU9OICJcbiIpOwotIAltdXRleF9sb2NrKCZpcG1pX2ludGVyZmFjZXNfbXV0ZXgpOwotIAly diA9IGlwbWlfcmVnaXN0ZXJfZHJpdmVyKCk7Ci0gCW11dGV4X3VubG9jaygmaXBtaV9pbnRlcmZh Y2VzX211dGV4KTsKLWRpZmYgLS1naXQgYS9kcml2ZXJzL2NoYXIvcmFuZG9tLmMgYi9kcml2ZXJz L2NoYXIvcmFuZG9tLmMKLWluZGV4IGI0ZGExZmI5NzZjMS4uMWUxMTJlMmI0MDViIDEwMDY0NAot LS0tIGEvZHJpdmVycy9jaGFyL3JhbmRvbS5jCi0rKysgYi9kcml2ZXJzL2NoYXIvcmFuZG9tLmMK LUBAIC01MSw5ICs1MSwxMSBAQAotICNpbmNsdWRlIDxsaW51eC9jb21wbGV0aW9uLmg+Ci0gI2lu Y2x1ZGUgPGxpbnV4L3V1aWQuaD4KLSAjaW5jbHVkZSA8bGludXgvdWFjY2Vzcy5oPgotKyNpbmNs dWRlIDxsaW51eC9yY3VwZGF0ZS5oPgotICNpbmNsdWRlIDxsaW51eC9zdXNwZW5kLmg+Ci0gI2lu Y2x1ZGUgPGxpbnV4L3NpcGhhc2guaD4KLSAjaW5jbHVkZSA8bGludXgvc2NoZWQvaXNvbGF0aW9u Lmg+Ci0rI2luY2x1ZGUgPGxpbnV4L2ZpcHMuaD4KLSAjaW5jbHVkZSA8Y3J5cHRvL2NoYWNoYS5o PgotICNpbmNsdWRlIDxjcnlwdG8vYmxha2Uycy5oPgotICNpbmNsdWRlIDx2ZHNvL2RhdGFwYWdl Lmg+Ci1AQCAtMzIwLDYgKzMyMiwxMSBAQCBzdGF0aWMgdm9pZCBjcm5nX2Zhc3Rfa2V5X2VyYXN1 cmUodTgga2V5W0NIQUNIQV9LRVlfU0laRV0sCi0gCW1lbXplcm9fZXhwbGljaXQoZmlyc3RfYmxv Y2ssIHNpemVvZihmaXJzdF9ibG9jaykpOwotIH0KLSAKLSsvKgotKyAqIEhvb2sgZm9yIGV4dGVy bmFsIFJORy4KLSsgKi8KLStzdGF0aWMgY29uc3Qgc3RydWN0IHJhbmRvbV9leHRybmcgX19yY3Ug KmV4dHJuZzsKLSsKLSAvKgotICAqIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIENoYUNoYSBzdGF0 ZSB0aGF0IHlvdSBtYXkgdXNlIGZvciBnZW5lcmF0aW5nCi0gICogcmFuZG9tIGRhdGEuIEl0IGFs c28gcmV0dXJucyB1cCB0byAzMiBieXRlcyBvbiBpdHMgb3duIG9mIHJhbmRvbSBkYXRhCi1AQCAt NzMyLDcgKzczOSw4IEBAIHN0YXRpYyB2b2lkIF9fY29sZCBfY3JlZGl0X2luaXRfYml0cyhzaXpl X3QgYml0cykKLSAJCQlxdWV1ZV93b3JrKHN5c3RlbV9kZmxfd3EsICZzZXRfcmVhZHkpOwotIAkJ YXRvbWljX25vdGlmaWVyX2NhbGxfY2hhaW4oJnJhbmRvbV9yZWFkeV9ub3RpZmllciwgMCwgTlVM TCk7Ci0gCQlpZiAoSVNfRU5BQkxFRChDT05GSUdfVkRTT19HRVRSQU5ET00pKQotLQkJCVdSSVRF X09OQ0UodmRzb19rX3JuZ19kYXRhLT5pc19yZWFkeSwgdHJ1ZSk7Ci0rCQkJaWYgKCFmaXBzX2Vu YWJsZWQpCi0rCQkJCVdSSVRFX09OQ0UodmRzb19rX3JuZ19kYXRhLT5pc19yZWFkeSwgdHJ1ZSk7 Ci0gCQl3YWtlX3VwX2ludGVycnVwdGlibGUoJmNybmdfaW5pdF93YWl0KTsKLSAJCWtpbGxfZmFz eW5jKCZmYXN5bmMsIFNJR0lPLCBQT0xMX0lOKTsKLSAJCXByX25vdGljZSgiY3JuZyBpbml0IGRv bmVcbiIpOwotQEAgLTc1MSw2ICs3NTksOSBAQCBzdGF0aWMgdm9pZCBfX2NvbGQgX2NyZWRpdF9p bml0X2JpdHMoc2l6ZV90IGJpdHMpCi0gfQotIAotIAotK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZmls ZV9vcGVyYXRpb25zIGV4dHJuZ19yYW5kb21fZm9wczsKLStzdGF0aWMgY29uc3Qgc3RydWN0IGZp bGVfb3BlcmF0aW9ucyBleHRybmdfdXJhbmRvbV9mb3BzOwotKwotIC8qKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0g ICoKLSAgKiBFbnRyb3B5IGNvbGxlY3Rpb24gcm91dGluZXMuCi1AQCAtOTY3LDYgKzk3OCwxOSBA QCB2b2lkIF9faW5pdCBhZGRfYm9vdGxvYWRlcl9yYW5kb21uZXNzKGNvbnN0IHZvaWQgKmJ1Ziwg c2l6ZV90IGxlbikKLSAJCWNyZWRpdF9pbml0X2JpdHMobGVuICogOCk7Ci0gfQotIAotK3ZvaWQg cmFuZG9tX3JlZ2lzdGVyX2V4dHJuZyhjb25zdCBzdHJ1Y3QgcmFuZG9tX2V4dHJuZyAqcm5nKQot K3sKLSsJcmN1X2Fzc2lnbl9wb2ludGVyKGV4dHJuZywgcm5nKTsKLSt9Ci0rRVhQT1JUX1NZTUJP TF9HUEwocmFuZG9tX3JlZ2lzdGVyX2V4dHJuZyk7Ci0rCi0rdm9pZCByYW5kb21fdW5yZWdpc3Rl cl9leHRybmcodm9pZCkKLSt7Ci0rCVJDVV9JTklUX1BPSU5URVIoZXh0cm5nLCBOVUxMKTsKLSsJ c3luY2hyb25pemVfcmN1KCk7Ci0rfQotK0VYUE9SVF9TWU1CT0xfR1BMKHJhbmRvbV91bnJlZ2lz dGVyX2V4dHJuZyk7Ci0rCi0gI2lmIElTX0VOQUJMRUQoQ09ORklHX1ZNR0VOSUQpCi0gc3RhdGlj IEJMT0NLSU5HX05PVElGSUVSX0hFQUQodm1mb3JrX2NoYWluKTsKLSAKLUBAIC0xMzgxLDYgKzE0 MDUsNyBAQCBTWVNDQUxMX0RFRklORTMoZ2V0cmFuZG9tLCBjaGFyIF9fdXNlciAqLCB1YnVmLCBz aXplX3QsIGxlbiwgdW5zaWduZWQgaW50LCBmbGFncwotIHsKLSAJc3RydWN0IGlvdl9pdGVyIGl0 ZXI7Ci0gCWludCByZXQ7Ci0rCWNvbnN0IHN0cnVjdCByYW5kb21fZXh0cm5nICpybmc7Ci0gCi0g CWlmIChmbGFncyAmIH4oR1JORF9OT05CTE9DSyB8IEdSTkRfUkFORE9NIHwgR1JORF9JTlNFQ1VS RSkpCi0gCQlyZXR1cm4gLUVJTlZBTDsKLUBAIC0xMzkyLDYgKzE0MTcsMjEgQEAgU1lTQ0FMTF9E RUZJTkUzKGdldHJhbmRvbSwgY2hhciBfX3VzZXIgKiwgdWJ1Ziwgc2l6ZV90LCBsZW4sIHVuc2ln bmVkIGludCwgZmxhZ3MKLSAJaWYgKChmbGFncyAmIChHUk5EX0lOU0VDVVJFIHwgR1JORF9SQU5E T00pKSA9PSAoR1JORF9JTlNFQ1VSRSB8IEdSTkRfUkFORE9NKSkKLSAJCXJldHVybiAtRUlOVkFM OwotIAotKwlyY3VfcmVhZF9sb2NrKCk7Ci0rCXJuZyA9IHJjdV9kZXJlZmVyZW5jZShleHRybmcp OwotKwlpZiAocm5nICYmICF0cnlfbW9kdWxlX2dldChybmctPm93bmVyKSkKLSsJCXJuZyA9IE5V TEw7Ci0rCXJjdV9yZWFkX3VubG9jaygpOwotKwotKwlpZiAocm5nKSB7Ci0rCQlyZXQgPSBpbXBv cnRfdWJ1ZihJVEVSX0RFU1QsIHVidWYsIGxlbiwgJml0ZXIpOwotKwkJaWYgKHVubGlrZWx5KHJl dCkpCi0rCQkJcmV0dXJuIHJldDsKLSsJCXJldCA9IHJuZy0+ZXh0cm5nX3JlYWRfaXRlcigmaXRl ciwgISEoZmxhZ3MgJiBHUk5EX1JBTkRPTSkpOwotKwkJbW9kdWxlX3B1dChybmctPm93bmVyKTsK LSsJCXJldHVybiByZXQ7Ci0rCX0KLSsKLSAJaWYgKCFjcm5nX3JlYWR5KCkgJiYgIShmbGFncyAm IEdSTkRfSU5TRUNVUkUpKSB7Ci0gCQlpZiAoZmxhZ3MgJiBHUk5EX05PTkJMT0NLKQotIAkJCXJl dHVybiAtRUFHQUlOOwotQEAgLTE0MTIsNiArMTQ1MiwxMiBAQCBzdGF0aWMgX19wb2xsX3QgcmFu ZG9tX3BvbGwoc3RydWN0IGZpbGUgKmZpbGUsIHBvbGxfdGFibGUgKndhaXQpCi0gCXJldHVybiBj cm5nX3JlYWR5KCkgPyBFUE9MTElOIHwgRVBPTExSRE5PUk0gOiBFUE9MTE9VVCB8IEVQT0xMV1JO T1JNOwotIH0KLSAKLStzdGF0aWMgX19wb2xsX3QgZXh0cm5nX3BvbGwoc3RydWN0IGZpbGUgKmZp bGUsIHBvbGxfdGFibGUgKiB3YWl0KQotK3sKLSsJLyogZXh0cm5nIHBvb2wgaXMgYWx3YXlzIGZ1 bGwsIGFsd2F5cyByZWFkLCBubyB3cml0ZXMgKi8KLSsJcmV0dXJuIEVQT0xMSU4gfCBFUE9MTFJE Tk9STTsKLSt9Ci0rCi0gc3RhdGljIHNzaXplX3Qgd3JpdGVfcG9vbF91c2VyKHN0cnVjdCBpb3Zf aXRlciAqaXRlcikKLSB7Ci0gCXU4IGJsb2NrW0JMQUtFMlNfQkxPQ0tfU0laRV07Ci1AQCAtMTU1 Miw3ICsxNTk4LDU4IEBAIHN0YXRpYyBpbnQgcmFuZG9tX2Zhc3luYyhpbnQgZmQsIHN0cnVjdCBm aWxlICpmaWxwLCBpbnQgb24pCi0gCXJldHVybiBmYXN5bmNfaGVscGVyKGZkLCBmaWxwLCBvbiwg JmZhc3luYyk7Ci0gfQotIAotK3N0YXRpYyBpbnQgcmFuZG9tX29wZW4oc3RydWN0IGlub2RlICpp bm9kZSwgc3RydWN0IGZpbGUgKmZpbHApCi0rewotKwljb25zdCBzdHJ1Y3QgcmFuZG9tX2V4dHJu ZyAqcm5nOwotKwotKwlyY3VfcmVhZF9sb2NrKCk7Ci0rCXJuZyA9IHJjdV9kZXJlZmVyZW5jZShl eHRybmcpOwotKwlpZiAocm5nICYmICF0cnlfbW9kdWxlX2dldChybmctPm93bmVyKSkKLSsJCXJu ZyA9IE5VTEw7Ci0rCXJjdV9yZWFkX3VubG9jaygpOwotKwotKwlpZiAoIXJuZykKLSsJCXJldHVy biAwOwotKwotKwlmaWxwLT5mX29wID0gJmV4dHJuZ19yYW5kb21fZm9wczsKLSsJZmlscC0+cHJp dmF0ZV9kYXRhID0gcm5nLT5vd25lcjsKLSsKLSsJcmV0dXJuIDA7Ci0rfQotKwotK3N0YXRpYyBp bnQgdXJhbmRvbV9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBmaWxlICpmaWxwKQot K3sKLSsJY29uc3Qgc3RydWN0IHJhbmRvbV9leHRybmcgKnJuZzsKLSsKLSsJcmN1X3JlYWRfbG9j aygpOwotKwlybmcgPSByY3VfZGVyZWZlcmVuY2UoZXh0cm5nKTsKLSsJaWYgKHJuZyAmJiAhdHJ5 X21vZHVsZV9nZXQocm5nLT5vd25lcikpCi0rCQlybmcgPSBOVUxMOwotKwlyY3VfcmVhZF91bmxv Y2soKTsKLSsKLSsJaWYgKCFybmcpCi0rCQlyZXR1cm4gMDsKLSsKLSsJZmlscC0+Zl9vcCA9ICZl eHRybmdfdXJhbmRvbV9mb3BzOwotKwlmaWxwLT5wcml2YXRlX2RhdGEgPSBybmctPm93bmVyOwot KwotKwlyZXR1cm4gMDsKLSt9Ci0rCi0rc3RhdGljIGludCBleHRybmdfcmVsZWFzZShzdHJ1Y3Qg aW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAqZmlscCkKLSt7Ci0rCW1vZHVsZV9wdXQoZmlscC0+ cHJpdmF0ZV9kYXRhKTsKLSsJcmV0dXJuIDA7Ci0rfQotKwotK3N0YXRpYyBzc2l6ZV90Ci0rZXh0 cm5nX3JlYWRfaXRlcihzdHJ1Y3Qga2lvY2IgKmtpb2NiLCBzdHJ1Y3QgaW92X2l0ZXIgKml0ZXIp Ci0rewotKwlyZXR1cm4gcmN1X2RlcmVmZXJlbmNlX3JhdyhleHRybmcpLT5leHRybmdfcmVhZF9p dGVyKGl0ZXIsIGZhbHNlKTsKLSt9Ci0rCi0gY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBy YW5kb21fZm9wcyA9IHsKLSsJLm9wZW4gID0gcmFuZG9tX29wZW4sCi0gCS5yZWFkX2l0ZXIgPSBy YW5kb21fcmVhZF9pdGVyLAotIAkud3JpdGVfaXRlciA9IHJhbmRvbV93cml0ZV9pdGVyLAotIAku cG9sbCA9IHJhbmRvbV9wb2xsLAotQEAgLTE1NjUsNiArMTY2Miw3IEBAIGNvbnN0IHN0cnVjdCBm aWxlX29wZXJhdGlvbnMgcmFuZG9tX2ZvcHMgPSB7Ci0gfTsKLSAKLSBjb25zdCBzdHJ1Y3QgZmls ZV9vcGVyYXRpb25zIHVyYW5kb21fZm9wcyA9IHsKLSsJLm9wZW4gID0gdXJhbmRvbV9vcGVuLAot IAkucmVhZF9pdGVyID0gdXJhbmRvbV9yZWFkX2l0ZXIsCi0gCS53cml0ZV9pdGVyID0gcmFuZG9t X3dyaXRlX2l0ZXIsCi0gCS51bmxvY2tlZF9pb2N0bCA9IHJhbmRvbV9pb2N0bCwKLUBAIC0xNTc1 LDYgKzE2NzMsMzIgQEAgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyB1cmFuZG9tX2ZvcHMg PSB7Ci0gCS5zcGxpY2Vfd3JpdGUgPSBpdGVyX2ZpbGVfc3BsaWNlX3dyaXRlLAotIH07Ci0gCi0r c3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgZXh0cm5nX3JhbmRvbV9mb3BzID0g ewotKwkub3BlbiAgPSByYW5kb21fb3BlbiwKLSsJLnJlYWRfaXRlciAgPSBleHRybmdfcmVhZF9p dGVyLAotKwkud3JpdGVfaXRlciA9IHJhbmRvbV93cml0ZV9pdGVyLAotKwkucG9sbCAgPSBleHRy bmdfcG9sbCwKLSsJLnVubG9ja2VkX2lvY3RsID0gcmFuZG9tX2lvY3RsLAotKwkuY29tcGF0X2lv Y3RsID0gY29tcGF0X3B0cl9pb2N0bCwKLSsJLmZhc3luYyA9IHJhbmRvbV9mYXN5bmMsCi0rCS5s bHNlZWsgPSBub29wX2xsc2VlaywKLSsJLnJlbGVhc2UgPSBleHRybmdfcmVsZWFzZSwKLSsJLnNw bGljZV9yZWFkID0gY29weV9zcGxpY2VfcmVhZCwKLSsJLnNwbGljZV93cml0ZSA9IGl0ZXJfZmls ZV9zcGxpY2Vfd3JpdGUsCi0rfTsKLSsKLStzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0 aW9ucyBleHRybmdfdXJhbmRvbV9mb3BzID0gewotKwkub3BlbiAgPSB1cmFuZG9tX29wZW4sCi0r CS5yZWFkX2l0ZXIgID0gZXh0cm5nX3JlYWRfaXRlciwKLSsJLndyaXRlX2l0ZXIgPSByYW5kb21f d3JpdGVfaXRlciwKLSsJLnVubG9ja2VkX2lvY3RsID0gcmFuZG9tX2lvY3RsLAotKwkuY29tcGF0 X2lvY3RsID0gY29tcGF0X3B0cl9pb2N0bCwKLSsJLmZhc3luYyA9IHJhbmRvbV9mYXN5bmMsCi0r CS5sbHNlZWsgPSBub29wX2xsc2VlaywKLSsJLnJlbGVhc2UgPSBleHRybmdfcmVsZWFzZSwKLSsJ LnNwbGljZV9yZWFkID0gY29weV9zcGxpY2VfcmVhZCwKLSsJLnNwbGljZV93cml0ZSA9IGl0ZXJf ZmlsZV9zcGxpY2Vfd3JpdGUsCi0rfTsKLSAKLSAvKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSAgKgotZGlmZiAtLWdp dCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL01ha2VmaWxlIGIvZHJpdmVycy9maXJtd2FyZS9lZmkv TWFrZWZpbGUKLWluZGV4IDhlZmJjZjY5OWU0Zi4uOTZkNWExY2E5ODFkIDEwMDY0NAotLS0tIGEv ZHJpdmVycy9maXJtd2FyZS9lZmkvTWFrZWZpbGUKLSsrKyBiL2RyaXZlcnMvZmlybXdhcmUvZWZp L01ha2VmaWxlCi1AQCAtMjUsNiArMjUsNyBAQCBzdWJkaXItJChDT05GSUdfRUZJX1NUVUIpCQkr PSBsaWJzdHViCi0gb2JqLSQoQ09ORklHX0VGSV9CT09UTE9BREVSX0NPTlRST0wpCSs9IGVmaWJj Lm8KLSBvYmotJChDT05GSUdfRUZJX1RFU1QpCQkJKz0gdGVzdC8KLSBvYmotJChDT05GSUdfRUZJ X0RFVl9QQVRIX1BBUlNFUikJKz0gZGV2LXBhdGgtcGFyc2VyLm8KLStvYmotJChDT05GSUdfRUZJ KQkJCSs9IHNlY3VyZWJvb3QubwotIG9iai0kKENPTkZJR19BUFBMRV9QUk9QRVJUSUVTKQkJKz0g YXBwbGUtcHJvcGVydGllcy5vCi0gb2JqLSQoQ09ORklHX0VGSV9SQ0kyX1RBQkxFKQkJKz0gcmNp Mi10YWJsZS5vCi0gb2JqLSQoQ09ORklHX0VGSV9FTUJFRERFRF9GSVJNV0FSRSkJKz0gZW1iZWRk ZWQtZmlybXdhcmUubwotZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5jIGIv ZHJpdmVycy9maXJtd2FyZS9lZmkvZWZpLmMKLWluZGV4IDAzMjdhMzlkMzFmYS4uNWI1MzMyYjRk ZTc4IDEwMDY0NAotLS0tIGEvZHJpdmVycy9maXJtd2FyZS9lZmkvZWZpLmMKLSsrKyBiL2RyaXZl cnMvZmlybXdhcmUvZWZpL2VmaS5jCi1AQCAtMzMsNiArMzMsNyBAQAotICNpbmNsdWRlIDxsaW51 eC9tZW1ibG9jay5oPgotICNpbmNsdWRlIDxsaW51eC9zZWN1cml0eS5oPgotICNpbmNsdWRlIDxs aW51eC9ub3RpZmllci5oPgotKyNpbmNsdWRlIDxsaW51eC9ic2VhcmNoLmg+Ci0gCi0gI2luY2x1 ZGUgPGFzbS9lYXJseV9pb3JlbWFwLmg+Ci0gCi1AQCAtMTAxNyw0MCArMTAxOCwxMDEgQEAgaW50 IGVmaV9tZW1fdHlwZSh1bnNpZ25lZCBsb25nIHBoeXNfYWRkcikKLSAJcmV0dXJuIG1kLnR5cGU7 Ci0gfQotIAotK3N0cnVjdCBlZmlfZXJyb3JfY29kZSB7Ci0rCWVmaV9zdGF0dXNfdCBzdGF0dXM7 Ci0rCWludCBlcnJubzsKLSsJY29uc3QgY2hhciAqZGVzY3JpcHRpb247Ci0rfTsKLSsKLStzdGF0 aWMgY29uc3Qgc3RydWN0IGVmaV9lcnJvcl9jb2RlIGVmaV9lcnJvcl9jb2Rlc1tdID0gewotKwl7 IEVGSV9TVUNDRVNTLCAwLCAiU3VjY2VzcyJ9LAotKyNpZiAwCi0rCXsgRUZJX0xPQURfRVJST1Is IC1FUElDS19BTl9FUlJOTywgIkxvYWQgRXJyb3IifSwKLSsjZW5kaWYKLSsJeyBFRklfSU5WQUxJ RF9QQVJBTUVURVIsIC1FSU5WQUwsICJJbnZhbGlkIFBhcmFtZXRlciJ9LAotKwl7IEVGSV9VTlNV UFBPUlRFRCwgLUVOT1NZUywgIlVuc3VwcG9ydGVkIn0sCi0rCXsgRUZJX0JBRF9CVUZGRVJfU0la RSwgLUVOT1NQQywgIkJhZCBCdWZmZXIgU2l6ZSJ9LAotKwl7IEVGSV9CVUZGRVJfVE9PX1NNQUxM LCAtRU5PU1BDLCAiQnVmZmVyIFRvbyBTbWFsbCJ9LAotKwl7IEVGSV9OT1RfUkVBRFksIC1FQUdB SU4sICJOb3QgUmVhZHkifSwKLSsJeyBFRklfREVWSUNFX0VSUk9SLCAtRUlPLCAiRGV2aWNlIEVy cm9yIn0sCi0rCXsgRUZJX1dSSVRFX1BST1RFQ1RFRCwgLUVST0ZTLCAiV3JpdGUgUHJvdGVjdGVk In0sCi0rCXsgRUZJX09VVF9PRl9SRVNPVVJDRVMsIC1FTk9NRU0sICJPdXQgb2YgUmVzb3VyY2Vz In0sCi0rI2lmIDAKLSsJeyBFRklfVk9MVU1FX0NPUlJVUFRFRCwgLUVQSUNLX0FOX0VSUk5PLCAi Vm9sdW1lIENvcnJ1cHQifSwKLSsJeyBFRklfVk9MVU1FX0ZVTEwsIC1FUElDS19BTl9FUlJOTywg IlZvbHVtZSBGdWxsIn0sCi0rCXsgRUZJX05PX01FRElBLCAtRVBJQ0tfQU5fRVJSTk8sICJObyBN ZWRpYSJ9LAotKwl7IEVGSV9NRURJQV9DSEFOR0VELCAtRVBJQ0tfQU5fRVJSTk8sICJNZWRpYSBj aGFuZ2VkIn0sCi0rI2VuZGlmCi0rCXsgRUZJX05PVF9GT1VORCwgLUVOT0VOVCwgIk5vdCBGb3Vu ZCJ9LAotKyNpZiAwCi0rCXsgRUZJX0FDQ0VTU19ERU5JRUQsIC1FUElDS19BTl9FUlJOTywgIkFj Y2VzcyBEZW5pZWQifSwKLSsJeyBFRklfTk9fUkVTUE9OU0UsIC1FUElDS19BTl9FUlJOTywgIk5v IFJlc3BvbnNlIn0sCi0rCXsgRUZJX05PX01BUFBJTkcsIC1FUElDS19BTl9FUlJOTywgIk5vIG1h cHBpbmcifSwKLSsJeyBFRklfVElNRU9VVCwgLUVQSUNLX0FOX0VSUk5PLCAiVGltZSBvdXQifSwK LSsJeyBFRklfTk9UX1NUQVJURUQsIC1FUElDS19BTl9FUlJOTywgIk5vdCBzdGFydGVkIn0sCi0r CXsgRUZJX0FMUkVBRFlfU1RBUlRFRCwgLUVQSUNLX0FOX0VSUk5PLCAiQWxyZWFkeSBzdGFydGVk In0sCi0rI2VuZGlmCi0rCXsgRUZJX0FCT1JURUQsIC1FSU5UUiwgIkFib3J0ZWQifSwKLSsjaWYg MAotKwl7IEVGSV9JQ01QX0VSUk9SLCAtRVBJQ0tfQU5fRVJSTk8sICJJQ01QIEVycm9yIn0sCi0r CXsgRUZJX1RGVFBfRVJST1IsIC1FUElDS19BTl9FUlJOTywgIlRGVFAgRXJyb3IifSwKLSsJeyBF RklfUFJPVE9DT0xfRVJST1IsIC1FUElDS19BTl9FUlJOTywgIlByb3RvY29sIEVycm9yIn0sCi0r CXsgRUZJX0lOQ09NUEFUSUJMRV9WRVJTSU9OLCAtRVBJQ0tfQU5fRVJSTk8sICJJbmNvbXBhdGli bGUgVmVyc2lvbiJ9LAotKyNlbmRpZgotKwl7IEVGSV9TRUNVUklUWV9WSU9MQVRJT04sIC1FQUND RVMsICJTZWN1cml0eSBQb2xpY3kgVmlvbGF0aW9uIn0sCi0rI2lmIDAKLSsJeyBFRklfQ1JDX0VS Uk9SLCAtRVBJQ0tfQU5fRVJSTk8sICJDUkMgRXJyb3IifSwKLSsJeyBFRklfRU5EX09GX01FRElB LCAtRVBJQ0tfQU5fRVJSTk8sICJFbmQgb2YgTWVkaWEifSwKLSsJeyBFRklfRU5EX09GX0ZJTEUs IC1FUElDS19BTl9FUlJOTywgIkVuZCBvZiBGaWxlIn0sCi0rCXsgRUZJX0lOVkFMSURfTEFOR1VB R0UsIC1FUElDS19BTl9FUlJOTywgIkludmFsaWQgTGFuZ3VhZ2VzIn0sCi0rCXsgRUZJX0NPTVBS T01JU0VEX0RBVEEsIC1FUElDS19BTl9FUlJOTywgIkNvbXByb21pc2VkIERhdGEifSwKLSsKLSsJ Ly8gd2FybmluZ3MKLSsJeyBFRklfV0FSTl9VTktPV05fR0xZUEgsIC1FUElDS19BTl9FUlJOTywg Ildhcm5pbmcgVW5rbm93biBHbHlwaCJ9LAotKwl7IEVGSV9XQVJOX0RFTEVURV9GQUlMVVJFLCAt RVBJQ0tfQU5fRVJSTk8sICJXYXJuaW5nIERlbGV0ZSBGYWlsdXJlIn0sCi0rCXsgRUZJX1dBUk5f V1JJVEVfRkFJTFVSRSwgLUVQSUNLX0FOX0VSUk5PLCAiV2FybmluZyBXcml0ZSBGYWlsdXJlIn0s Ci0rCXsgRUZJX1dBUk5fQlVGRkVSX1RPT19TTUFMTCwgLUVQSUNLX0FOX0VSUk5PLCAiV2Fybmlu ZyBCdWZmZXIgVG9vIFNtYWxsIn0sCi0rI2VuZGlmCi0rfTsKLSsKLStzdGF0aWMgaW50Ci0rZWZp X3N0YXR1c19jbXBfYnNlYXJjaChjb25zdCB2b2lkICprZXksIGNvbnN0IHZvaWQgKml0ZW0pCi0r ewotKwl1NjQgc3RhdHVzID0gKHU2NCkodWludHB0cl90KWtleTsKLSsJc3RydWN0IGVmaV9lcnJv cl9jb2RlICpjb2RlID0gKHN0cnVjdCBlZmlfZXJyb3JfY29kZSAqKWl0ZW07Ci0rCi0rCWlmIChz dGF0dXMgPCBjb2RlLT5zdGF0dXMpCi0rCQlyZXR1cm4gLTE7Ci0rCWlmIChzdGF0dXMgPiBjb2Rl LT5zdGF0dXMpCi0rCQlyZXR1cm4gMTsKLSsJcmV0dXJuIDA7Ci0rfQotKwotIGludCBlZmlfc3Rh dHVzX3RvX2VycihlZmlfc3RhdHVzX3Qgc3RhdHVzKQotIHsKLS0JaW50IGVycjsKLS0KLS0Jc3dp dGNoIChzdGF0dXMpIHsKLS0JY2FzZSBFRklfU1VDQ0VTUzoKLS0JCWVyciA9IDA7Ci0tCQlicmVh azsKLS0JY2FzZSBFRklfSU5WQUxJRF9QQVJBTUVURVI6Ci0tCQllcnIgPSAtRUlOVkFMOwotLQkJ YnJlYWs7Ci0tCWNhc2UgRUZJX09VVF9PRl9SRVNPVVJDRVM6Ci0tCQllcnIgPSAtRU5PU1BDOwot LQkJYnJlYWs7Ci0tCWNhc2UgRUZJX0RFVklDRV9FUlJPUjoKLS0JCWVyciA9IC1FSU87Ci0tCQli cmVhazsKLS0JY2FzZSBFRklfV1JJVEVfUFJPVEVDVEVEOgotLQkJZXJyID0gLUVST0ZTOwotLQkJ YnJlYWs7Ci0tCWNhc2UgRUZJX1NFQ1VSSVRZX1ZJT0xBVElPTjoKLS0JCWVyciA9IC1FQUNDRVM7 Ci0tCQlicmVhazsKLS0JY2FzZSBFRklfTk9UX0ZPVU5EOgotLQkJZXJyID0gLUVOT0VOVDsKLS0J CWJyZWFrOwotLQljYXNlIEVGSV9BQk9SVEVEOgotLQkJZXJyID0gLUVJTlRSOwotLQkJYnJlYWs7 Ci0tCWRlZmF1bHQ6Ci0tCQllcnIgPSAtRUlOVkFMOwotLQl9Ci0rCXN0cnVjdCBlZmlfZXJyb3Jf Y29kZSAqZm91bmQ7Ci0rCXNpemVfdCBudW0gPSBzaXplb2YoZWZpX2Vycm9yX2NvZGVzKSAvIHNp emVvZihzdHJ1Y3QgZWZpX2Vycm9yX2NvZGUpOwotIAotLQlyZXR1cm4gZXJyOwotKwlmb3VuZCA9 IGJzZWFyY2goKHZvaWQgKikodWludHB0cl90KXN0YXR1cywgZWZpX2Vycm9yX2NvZGVzLAotKwkJ CW51bSwgc2l6ZW9mKHN0cnVjdCBlZmlfZXJyb3JfY29kZSksCi0rCQkJZWZpX3N0YXR1c19jbXBf YnNlYXJjaCk7Ci0rCWlmICghZm91bmQpCi0rCQlyZXR1cm4gLUVJTlZBTDsKLSsJcmV0dXJuIGZv dW5kLT5lcnJubzsKLSt9Ci0rCi0rY29uc3QgY2hhciAqCi0rZWZpX3N0YXR1c190b19zdHIoZWZp X3N0YXR1c190IHN0YXR1cykKLSt7Ci0rCXN0cnVjdCBlZmlfZXJyb3JfY29kZSAqZm91bmQ7Ci0r CXNpemVfdCBudW0gPSBzaXplb2YoZWZpX2Vycm9yX2NvZGVzKSAvIHNpemVvZihzdHJ1Y3QgZWZp X2Vycm9yX2NvZGUpOwotKwotKwlmb3VuZCA9IGJzZWFyY2goKHZvaWQgKikodWludHB0cl90KXN0 YXR1cywgZWZpX2Vycm9yX2NvZGVzLAotKwkJCW51bSwgc2l6ZW9mKHN0cnVjdCBlZmlfZXJyb3Jf Y29kZSksCi0rCQkJZWZpX3N0YXR1c19jbXBfYnNlYXJjaCk7Ci0rCWlmICghZm91bmQpCi0rCQly ZXR1cm4gIlVua25vd24gZXJyb3IgY29kZSI7Ci0rCXJldHVybiBmb3VuZC0+ZGVzY3JpcHRpb247 Ci0gfQotIEVYUE9SVF9TWU1CT0xfR1BMKGVmaV9zdGF0dXNfdG9fZXJyKTsKLSAKLWRpZmYgLS1n aXQgYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9saWJzdHViL2ZkdC5jIGIvZHJpdmVycy9maXJtd2Fy ZS9lZmkvbGlic3R1Yi9mZHQuYwotaW5kZXggMjNiMzU0M2QzMDQxLi4wZDA4YTU0OWExMGIgMTAw NjQ0Ci0tLS0gYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9saWJzdHViL2ZkdC5jCi0rKysgYi9kcml2 ZXJzL2Zpcm13YXJlL2VmaS9saWJzdHViL2ZkdC5jCi1AQCAtMTMyLDYgKzEzMiwxMSBAQCBzdGF0 aWMgZWZpX3N0YXR1c190IHVwZGF0ZV9mZHQodm9pZCAqb3JpZ19mZHQsIHVuc2lnbmVkIGxvbmcg b3JpZ19mZHRfc2l6ZSwKLSAJCX0KLSAJfQotIAotKwlmZHRfdmFsMzIgPSBjcHVfdG9fZmR0MzIo KHUzMillZmlfZ2V0X3NlY3VyZWJvb3QoKSk7Ci0rCXN0YXR1cyA9IGZkdF9zZXRwcm9wX3Zhcihm ZHQsIG5vZGUsICJzZWN1cmUtYm9vdC1tb2RlIiwgZmR0X3ZhbDMyKTsKLSsJaWYgKHN0YXR1cykK LSsJCWdvdG8gZmR0X3NldF9mYWlsOwotKwotIAkvKiBTaHJpbmsgdGhlIEZEVCBiYWNrIHRvIGl0 cyBtaW5pbXVtIHNpemU6ICovCi0gCWZkdF9wYWNrKGZkdCk7Ci0gCi1kaWZmIC0tZ2l0IGEvZHJp dmVycy9maXJtd2FyZS9lZmkvbGlic3R1Yi9zZWN1cmVib290LmMgYi9kcml2ZXJzL2Zpcm13YXJl L2VmaS9saWJzdHViL3NlY3VyZWJvb3QuYwotaW5kZXggNTE2ZjRmMDA2OWJkLi4zODAzNTQ3NTUx MDggMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9saWJzdHViL3NlY3VyZWJvb3Qu YwotKysrIGIvZHJpdmVycy9maXJtd2FyZS9lZmkvbGlic3R1Yi9zZWN1cmVib290LmMKLUBAIC0y OSwxMCArMjksMTMgQEAgZW51bSBlZmlfc2VjdXJlYm9vdF9tb2RlIGVmaV9nZXRfc2VjdXJlYm9v dCh2b2lkKQotIHsKLSAJdTMyIGF0dHI7Ci0gCXVuc2lnbmVkIGxvbmcgc2l6ZTsKLS0JZW51bSBl Zmlfc2VjdXJlYm9vdF9tb2RlIG1vZGU7Ci0rCXN0YXRpYyBlbnVtIGVmaV9zZWN1cmVib290X21v ZGUgbW9kZTsKLSAJZWZpX3N0YXR1c190IHN0YXR1czsKLSAJdTggbW9rc2JzdGF0ZTsKLSAKLSsJ aWYgKG1vZGUgIT0gZWZpX3NlY3VyZWJvb3RfbW9kZV91bnNldCkKLSsJCXJldHVybiBtb2RlOwot KwotIAltb2RlID0gZWZpX2dldF9zZWN1cmVib290X21vZGUoZ2V0X3Zhcik7Ci0gCWlmIChtb2Rl ID09IGVmaV9zZWN1cmVib290X21vZGVfdW5rbm93bikgewotIAkJZWZpX2VycigiQ291bGQgbm90 IGRldGVybWluZSBVRUZJIFNlY3VyZSBCb290IHN0YXR1cy5cbiIpOwotQEAgLTUzLDEwICs1Niwx MyBAQCBlbnVtIGVmaV9zZWN1cmVib290X21vZGUgZWZpX2dldF9zZWN1cmVib290KHZvaWQpCi0g CS8qIElmIGl0IGZhaWxzLCB3ZSBkb24ndCBjYXJlIHdoeS4gRGVmYXVsdCB0byBzZWN1cmUgKi8K LSAJaWYgKHN0YXR1cyAhPSBFRklfU1VDQ0VTUykKLSAJCWdvdG8gc2VjdXJlX2Jvb3RfZW5hYmxl ZDsKLS0JaWYgKCEoYXR0ciAmIEVGSV9WQVJJQUJMRV9OT05fVk9MQVRJTEUpICYmIG1va3Nic3Rh dGUgPT0gMSkKLS0JCXJldHVybiBlZmlfc2VjdXJlYm9vdF9tb2RlX2Rpc2FibGVkOwotKwlpZiAo IShhdHRyICYgRUZJX1ZBUklBQkxFX05PTl9WT0xBVElMRSkgJiYgbW9rc2JzdGF0ZSA9PSAxKSB7 Ci0rCQltb2RlID0gZWZpX3NlY3VyZWJvb3RfbW9kZV9kaXNhYmxlZDsKLSsJCXJldHVybiBtb2Rl OwotKwl9Ci0gCi0gc2VjdXJlX2Jvb3RfZW5hYmxlZDoKLSAJZWZpX2luZm8oIlVFRkkgU2VjdXJl IEJvb3QgaXMgZW5hYmxlZC5cbiIpOwotLQlyZXR1cm4gZWZpX3NlY3VyZWJvb3RfbW9kZV9lbmFi bGVkOwotKwltb2RlID0gZWZpX3NlY3VyZWJvb3RfbW9kZV9lbmFibGVkOwotKwlyZXR1cm4gbW9k ZTsKLSB9Ci1kaWZmIC0tZ2l0IGEvZHJpdmVycy9maXJtd2FyZS9lZmkvc2VjdXJlYm9vdC5jIGIv ZHJpdmVycy9maXJtd2FyZS9lZmkvc2VjdXJlYm9vdC5jCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAot aW5kZXggMDAwMDAwMDAwMDAwLi5kZTBhMzcxNGE1ZDQKLS0tLSAvZGV2L251bGwKLSsrKyBiL2Ry aXZlcnMvZmlybXdhcmUvZWZpL3NlY3VyZWJvb3QuYwotQEAgLTAsMCArMSwzOCBAQAotKy8qIENv cmUga2VybmVsIHNlY3VyZSBib290IHN1cHBvcnQuCi0rICoKLSsgKiBDb3B5cmlnaHQgKEMpIDIw MTcgUmVkIEhhdCwgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKyAqIFdyaXR0ZW4gYnkgRGF2 aWQgSG93ZWxscyAoZGhvd2VsbHNAcmVkaGF0LmNvbSkKLSsgKgotKyAqIFRoaXMgcHJvZ3JhbSBp cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSsgKiBtb2Rp ZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5jZQot KyAqIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIg dmVyc2lvbgotKyAqIDIgb2YgdGhlIExpY2VuY2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCi0rICovCi0rCi0rI2RlZmluZSBwcl9mbXQoZm10KSBLQlVJTERfTU9ETkFN RSAiOiAiIGZtdAotKwotKyNpbmNsdWRlIDxsaW51eC9lZmkuaD4KLSsjaW5jbHVkZSA8bGludXgv a2VybmVsLmg+Ci0rI2luY2x1ZGUgPGxpbnV4L3ByaW50ay5oPgotKwotKy8qCi0rICogRGVjaWRl IHdoYXQgdG8gZG8gd2hlbiBVRUZJIHNlY3VyZSBib290IG1vZGUgaXMgZW5hYmxlZC4KLSsgKi8K LSt2b2lkIF9faW5pdCBlZmlfc2V0X3NlY3VyZV9ib290KGVudW0gZWZpX3NlY3VyZWJvb3RfbW9k ZSBtb2RlKQotK3sKLSsJaWYgKGVmaV9lbmFibGVkKEVGSV9CT09UKSkgewotKwkJc3dpdGNoICht b2RlKSB7Ci0rCQljYXNlIGVmaV9zZWN1cmVib290X21vZGVfZGlzYWJsZWQ6Ci0rCQkJcHJfaW5m bygiU2VjdXJlIGJvb3QgZGlzYWJsZWRcbiIpOwotKwkJCWJyZWFrOwotKwkJY2FzZSBlZmlfc2Vj dXJlYm9vdF9tb2RlX2VuYWJsZWQ6Ci0rCQkJc2V0X2JpdChFRklfU0VDVVJFX0JPT1QsICZlZmku ZmxhZ3MpOwotKwkJCXByX2luZm8oIlNlY3VyZSBib290IGVuYWJsZWRcbiIpOwotKwkJCWJyZWFr OwotKwkJZGVmYXVsdDoKLSsJCQlwcl93YXJuKCJTZWN1cmUgYm9vdCBjb3VsZCBub3QgYmUgZGV0 ZXJtaW5lZCAobW9kZSAldSlcbiIsCi0rCQkJCSAgIG1vZGUpOwotKwkJCWJyZWFrOwotKwkJfQot Kwl9Ci0rfQotZGlmZiAtLWdpdCBhL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2ln aHQtZXRtNHgtY29yZS5jIGIvZHJpdmVycy9od3RyYWNpbmcvY29yZXNpZ2h0L2NvcmVzaWdodC1l dG00eC1jb3JlLmMKLWluZGV4IDE0YmIzMWJkNmEwYi4uMDUyOTM1OWQ3NDQwIDEwMDY0NAotLS0t IGEvZHJpdmVycy9od3RyYWNpbmcvY29yZXNpZ2h0L2NvcmVzaWdodC1ldG00eC1jb3JlLmMKLSsr KyBiL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtZXRtNHgtY29yZS5jCi1A QCAtMTIsNiArMTIsNyBAQAotICNpbmNsdWRlIDxsaW51eC9pbml0Lmg+Ci0gI2luY2x1ZGUgPGxp bnV4L3R5cGVzLmg+Ci0gI2luY2x1ZGUgPGxpbnV4L2RldmljZS5oPgotKyNpbmNsdWRlIDxsaW51 eC9kbWkuaD4KLSAjaW5jbHVkZSA8bGludXgvaW8uaD4KLSAjaW5jbHVkZSA8bGludXgvZXJyLmg+ Ci0gI2luY2x1ZGUgPGxpbnV4L2ZzLmg+Ci1AQCAtMjQ0Nyw2ICsyNDQ4LDE2IEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgYW1iYV9pZCBldG00X2lkc1tdID0gewotIAl7fSwKLSB9OwotIAotK3N0YXRp YyBjb25zdCBzdHJ1Y3QgZG1pX3N5c3RlbV9pZCBicm9rZW5fY29yZXNpZ2h0W10gPSB7Ci0rCXsK LSsJCS5tYXRjaGVzID0gewotKwkJCURNSV9NQVRDSChETUlfU1lTX1ZFTkRPUiwgIkhQRSIpLAot KwkJCURNSV9NQVRDSChETUlfUFJPRFVDVF9OQU1FLCAiQXBvbGxvIDcwIiksCi0rCQl9LAotKwl9 LAotKwl7IH0JLyogdGVybWluYXRpbmcgZW50cnkgKi8KLSt9OwotKwotIE1PRFVMRV9ERVZJQ0Vf VEFCTEUoYW1iYSwgZXRtNF9pZHMpOwotIAotIHN0YXRpYyBzdHJ1Y3QgYW1iYV9kcml2ZXIgZXRt NHhfYW1iYV9kcml2ZXIgPSB7Ci1AQCAtMjUyMSw2ICsyNTMyLDExIEBAIHN0YXRpYyBpbnQgX19p bml0IGV0bTR4X2luaXQodm9pZCkKLSB7Ci0gCWludCByZXQ7Ci0gCi0rCWlmIChkbWlfY2hlY2tf c3lzdGVtKGJyb2tlbl9jb3Jlc2lnaHQpKSB7Ci0rCQlwcl9pbmZvKCJFVE00IGRpc2FibGVkIGR1 ZSB0byBmaXJtd2FyZSBidWdcbiIpOwotKwkJcmV0dXJuIDA7Ci0rCX0KLSsKLSAJcmV0ID0gZXRt NF9wbV9zZXR1cCgpOwotIAotIAkvKiBldG00X3BtX3NldHVwKCkgZG9lcyBpdHMgb3duIGNsZWFu dXAgLSBleGl0IG9uIGVycm9yICovCi1AQCAtMjU0Nyw2ICsyNTYzLDkgQEAgc3RhdGljIGludCBf X2luaXQgZXRtNHhfaW5pdCh2b2lkKQotIAotIHN0YXRpYyB2b2lkIF9fZXhpdCBldG00eF9leGl0 KHZvaWQpCi0gewotKwlpZiAoZG1pX2NoZWNrX3N5c3RlbShicm9rZW5fY29yZXNpZ2h0KSkKLSsJ CXJldHVybjsKLSsKLSAJYW1iYV9kcml2ZXJfdW5yZWdpc3RlcigmZXRtNHhfYW1iYV9kcml2ZXIp OwotIAlwbGF0Zm9ybV9kcml2ZXJfdW5yZWdpc3RlcigmZXRtNF9wbGF0Zm9ybV9kcml2ZXIpOwot IAlldG00X3BtX2NsZWFyKCk7Ci1kaWZmIC0tZ2l0IGEvZHJpdmVycy9pb21tdS9pb21tdS5jIGIv ZHJpdmVycy9pb21tdS9pb21tdS5jCi1pbmRleCBlOGYxM2RjZWJiZGUuLmRkNzAxNGNhOTYyYyAx MDA2NDQKLS0tLSBhL2RyaXZlcnMvaW9tbXUvaW9tbXUuYwotKysrIGIvZHJpdmVycy9pb21tdS9p b21tdS5jCi1AQCAtOCw2ICs4LDcgQEAKLSAKLSAjaW5jbHVkZSA8bGludXgvYW1iYS9idXMuaD4K LSAjaW5jbHVkZSA8bGludXgvZGV2aWNlLmg+Ci0rI2luY2x1ZGUgPGxpbnV4L2RtaS5oPgotICNp bmNsdWRlIDxsaW51eC9rZXJuZWwuaD4KLSAjaW5jbHVkZSA8bGludXgvYml0cy5oPgotICNpbmNs dWRlIDxsaW51eC9idWcuaD4KLUBAIC0zMTM1LDYgKzMxMzYsMjcgQEAgaW50IGlvbW11X2Z3c3Bl Y19hZGRfaWRzKHN0cnVjdCBkZXZpY2UgKmRldiwgY29uc3QgdTMyICppZHMsIGludCBudW1faWRz KQotIH0KLSBFWFBPUlRfU1lNQk9MX0dQTChpb21tdV9md3NwZWNfYWRkX2lkcyk7Ci0gCi0rI2lm ZGVmIENPTkZJR19BUk02NAotK3N0YXRpYyBpbnQgX19pbml0IGlvbW11X3F1aXJrcyh2b2lkKQot K3sKLSsJY29uc3QgY2hhciAqdmVuZG9yLCAqbmFtZTsKLSsKLSsJdmVuZG9yID0gZG1pX2dldF9z eXN0ZW1faW5mbyhETUlfU1lTX1ZFTkRPUik7Ci0rCW5hbWUgPSBkbWlfZ2V0X3N5c3RlbV9pbmZv KERNSV9QUk9EVUNUX05BTUUpOwotKwotKwlpZiAodmVuZG9yICYmCi0rCSAgICAoc3RybmNtcCh2 ZW5kb3IsICJHSUdBQllURSIsIDgpID09IDAgJiYgbmFtZSAmJgotKwkgICAgIChzdHJuY21wKG5h bWUsICJSMTIwIiwgNCkgPT0gMCB8fAotKwkgICAgICBzdHJuY21wKG5hbWUsICJSMjcwIiwgNCkg PT0gMCkpKSB7Ci0rCQlwcl93YXJuKCJHaWdhYnl0ZSAlcyBkZXRlY3RlZCwgZm9yY2UgaW9tbXUg cGFzc3Rocm91Z2ggbW9kZSIsIG5hbWUpOwotKwkJaW9tbXVfZGVmX2RvbWFpbl90eXBlID0gSU9N TVVfRE9NQUlOX0lERU5USVRZOwotKwl9Ci0rCi0rCXJldHVybiAwOwotK30KLSthcmNoX2luaXRj YWxsKGlvbW11X3F1aXJrcyk7Ci0rI2VuZGlmCi0rCi0gLyoqCi0gICogaW9tbXVfc2V0dXBfZGVm YXVsdF9kb21haW4gLSBTZXQgdGhlIGRlZmF1bHRfZG9tYWluIGZvciB0aGUgZ3JvdXAKLSAgKiBA Z3JvdXA6IEdyb3VwIHRvIGNoYW5nZQotZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVzc2FnZS9mdXNp b24vbXB0c2FzLmMgYi9kcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNhcy5jCi1pbmRleCBjMzYy ZjA5YThjNTUuLmJjZGE2MmQ4OWVjZCAxMDA2NDQKLS0tLSBhL2RyaXZlcnMvbWVzc2FnZS9mdXNp b24vbXB0c2FzLmMKLSsrKyBiL2RyaXZlcnMvbWVzc2FnZS9mdXNpb24vbXB0c2FzLmMKLUBAIC01 Mzc3LDYgKzUzNzcsMTAgQEAgc3RhdGljIHZvaWQgbXB0c2FzX3JlbW92ZShzdHJ1Y3QgcGNpX2Rl diAqcGRldikKLSB9Ci0gCi0gc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkIG1wdHNh c19wY2lfdGFibGVbXSA9IHsKLSsjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSsJeyBQ Q0lfVkVORE9SX0lEX0xTSV9MT0dJQywgTVBJX01BTlVGQUNUUEFHRV9ERVZJRF9TQVMxMDY4LAot KwkJUENJX1ZFTkRPUl9JRF9WTVdBUkUsIFBDSV9BTllfSUQgfSwKLSsjZWxzZQotIAl7IFBDSV9W RU5ET1JfSURfTFNJX0xPR0lDLCBNUElfTUFOVUZBQ1RQQUdFX0RFVklEX1NBUzEwNjQsCi0gCQlQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0gCXsgUENJX1ZFTkRPUl9JRF9MU0lfTE9HSUMsIE1Q SV9NQU5VRkFDVFBBR0VfREVWSURfU0FTMTA2OCwKLUBAIC01Mzg5LDYgKzUzOTMsNyBAQCBzdGF0 aWMgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgbXB0c2FzX3BjaV90YWJsZVtdID0gewotIAkJ UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotIAl7IFBDSV9WRU5ET1JfSURfTFNJX0xPR0lDLCBN UElfTUFOVUZBQ1RQQUdFX0RFVklEX1NBUzEwNjhfODIwWEVMUCwKLSAJCVBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKLSsjZW5kaWYKLSAJezB9CS8qIFRlcm1pbmF0aW5nIGVudHJ5ICovCi0gfTsK LSBNT0RVTEVfREVWSUNFX1RBQkxFKHBjaSwgbXB0c2FzX3BjaV90YWJsZSk7Ci1kaWZmIC0tZ2l0 IGEvZHJpdmVycy9tZXNzYWdlL2Z1c2lvbi9tcHRzcGkuYyBiL2RyaXZlcnMvbWVzc2FnZS9mdXNp b24vbXB0c3BpLmMKLWluZGV4IDU2ODkyYjFmM2RlMi4uYjBlNTU5MTNiYjJlIDEwMDY0NAotLS0t IGEvZHJpdmVycy9tZXNzYWdlL2Z1c2lvbi9tcHRzcGkuYwotKysrIGIvZHJpdmVycy9tZXNzYWdl L2Z1c2lvbi9tcHRzcGkuYwotQEAgLTEyNDAsMTIgKzEyNDAsMTcgQEAgc3RhdGljIHN0cnVjdCBz cGlfZnVuY3Rpb25fdGVtcGxhdGUgbXB0c3BpX3RyYW5zcG9ydF9mdW5jdGlvbnMgPSB7Ci0gICov Ci0gCi0gc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkIG1wdHNwaV9wY2lfdGFibGVb XSA9IHsKLSsjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSsJeyBQQ0lfVkVORE9SX0lE X0xTSV9MT0dJQywgTVBJX01BTlVGQUNUUEFHRV9ERVZJRF81M0MxMDMwLAotKwlQQ0lfVkVORE9S X0lEX1ZNV0FSRSwgUENJX0FOWV9JRCB9LAotKyNlbHNlCi0gCXsgUENJX1ZFTkRPUl9JRF9MU0lf TE9HSUMsIE1QSV9NQU5VRkFDVFBBR0VfREVWSURfNTNDMTAzMCwKLSAJCVBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKLSAJeyBQQ0lfVkVORE9SX0lEX0FUVE8sIE1QSV9NQU5VRkFDVFBBR0VfREVW SURfNTNDMTAzMCwKLSAJCVBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSAJeyBQQ0lfVkVORE9S X0lEX0xTSV9MT0dJQywgTVBJX01BTlVGQUNUUEFHRV9ERVZJRF81M0MxMDM1LAotIAkJUENJX0FO WV9JRCwgUENJX0FOWV9JRCB9LAotKyNlbmRpZgotIAl7MH0JLyogVGVybWluYXRpbmcgZW50cnkg Ki8KLSB9OwotIE1PRFVMRV9ERVZJQ0VfVEFCTEUocGNpLCBtcHRzcGlfcGNpX3RhYmxlKTsKLWRp ZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJlZ3VhcmQvbWFpbi5jIGIvZHJpdmVycy9uZXQvd2ly ZWd1YXJkL21haW4uYwotaW5kZXggYTAwNjcxYjU4NzAxLi5lZWVmMjc2NmI4YjMgMTAwNjQ0Ci0t LS0gYS9kcml2ZXJzL25ldC93aXJlZ3VhcmQvbWFpbi5jCi0rKysgYi9kcml2ZXJzL25ldC93aXJl Z3VhcmQvbWFpbi5jCi1AQCAtMTIsNiArMTIsNyBAQAotIAotICNpbmNsdWRlIDx1YXBpL2xpbnV4 L3dpcmVndWFyZC5oPgotIAotKyNpbmNsdWRlIDxsaW51eC9maXBzLmg+Ci0gI2luY2x1ZGUgPGxp bnV4L2luaXQuaD4KLSAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Ci0gI2luY2x1ZGUgPG5ldC9n ZW5ldGxpbmsuaD4KLUBAIC0yMSw2ICsyMiwxMSBAQCBzdGF0aWMgaW50IF9faW5pdCB3Z19tb2Rf aW5pdCh2b2lkKQotIHsKLSAJaW50IHJldDsKLSAKLSsjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVS RU5DRVMKLSsJaWYgKGZpcHNfZW5hYmxlZCkKLSsJCXJldHVybiAtRU9QTk9UU1VQUDsKLSsjZW5k aWYKLSsKLSAJcmV0ID0gd2dfYWxsb3dlZGlwc19zbGFiX2luaXQoKTsKLSAJaWYgKHJldCA8IDAp Ci0gCQlnb3RvIGVycl9hbGxvd2VkaXBzOwotZGlmZiAtLWdpdCBhL2RyaXZlcnMvcGNpL3BjaS1k cml2ZXIuYyBiL2RyaXZlcnMvcGNpL3BjaS1kcml2ZXIuYwotaW5kZXggZjM2Nzc4ZTYyYWMxLi43 YjRkYzRhZmY3YzUgMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL3BjaS9wY2ktZHJpdmVyLmMKLSsrKyBi L2RyaXZlcnMvcGNpL3BjaS1kcml2ZXIuYwotQEAgLTE5LDYgKzE5LDcgQEAKLSAjaW5jbHVkZSA8 bGludXgva2V4ZWMuaD4KLSAjaW5jbHVkZSA8bGludXgvb2ZfZGV2aWNlLmg+Ci0gI2luY2x1ZGUg PGxpbnV4L2FjcGkuaD4KLSsjaW5jbHVkZSA8bGludXgva2VybmVsLmg+Ci0gI2luY2x1ZGUgPGxp bnV4L2RtYS1tYXAtb3BzLmg+Ci0gI2luY2x1ZGUgPGxpbnV4L2lvbW11Lmg+Ci0gI2luY2x1ZGUg InBjaS5oIgotQEAgLTMyOSw3ICszMzAsMTUgQEAgc3RhdGljIGludCBsb2NhbF9wY2lfcHJvYmUo c3RydWN0IGRydl9kZXZfYW5kX2lkICpkZGkpCi0gCSAqLwotIAlwbV9ydW50aW1lX2dldF9zeW5j KGRldik7Ci0gCXBjaV9kZXYtPmRyaXZlciA9IHBjaV9kcnY7Ci0rCi0rI2lmZGVmIENPTkZJR19S SEVMX0RJRkZFUkVOQ0VTCi0rCXJjID0gLUVBQ0NFUzsKLSsJaWYgKCFwY2lfcmhfY2hlY2tfc3Rh dHVzKHBjaV9kZXYpKQotKwkJcmMgPSBwY2lfZHJ2LT5wcm9iZShwY2lfZGV2LCBkZGktPmlkKTsK LSsjZWxzZQotIAlyYyA9IHBjaV9kcnYtPnByb2JlKHBjaV9kZXYsIGRkaS0+aWQpOwotKyNlbmRp ZgotKwotIAlpZiAoIXJjKQotIAkJcmV0dXJuIHJjOwotIAlpZiAocmMgPCAwKSB7Ci1kaWZmIC0t Z2l0IGEvZHJpdmVycy9wY2kvcXVpcmtzLmMgYi9kcml2ZXJzL3BjaS9xdWlya3MuYwotaW5kZXgg YjA5ZjI3Zjc4NDZmLi5iNTRmZTUzODUxMWEgMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL3BjaS9xdWly a3MuYwotKysrIGIvZHJpdmVycy9wY2kvcXVpcmtzLmMKLUBAIC00NDk2LDYgKzQ0OTYsMzAgQEAg c3RhdGljIHZvaWQgcXVpcmtfYXNwZWVkX3BjaV9icmlkZ2Vfbm9fYWxpYXMoc3RydWN0IHBjaV9k ZXYgKnBkZXYpCi0gfQotIERFQ0xBUkVfUENJX0ZJWFVQX0hFQURFUihQQ0lfVkVORE9SX0lEX0FT UEVFRCwgMHgxMTUwLCBxdWlya19hc3BlZWRfcGNpX2JyaWRnZV9ub19hbGlhcyk7Ci0gCi0rLyoK LSsgKiBQQ0kgQkFSIDUgaXMgbm90IHNldHVwIGNvcnJlY3RseSBmb3IgdGhlIG9uLWJvYXJkIEFI Q0kgY29udHJvbGxlcgotKyAqIG9uIEJyb2FkY29tJ3MgVnVsY2FuIHByb2Nlc3Nvci4gQWRkZWQg YSBxdWlyayB0byBmaXggQkFSIDUgYnkKLSsgKiB1c2luZyBCQVIgNCdzIHJlc291cmNlcyB3aGlj aCBhcmUgcG9wdWxhdGVkIGNvcnJlY3RseSBhbmQgTk9UCi0rICogYWN0dWFsbHkgdXNlZCBieSB0 aGUgQUhDSSBjb250cm9sbGVyLgotKyAqLwotK3N0YXRpYyB2b2lkIHF1aXJrX2ZpeF92dWxjYW5f YWhjaV9iYXJzKHN0cnVjdCBwY2lfZGV2ICpkZXYpCi0rewotKwlzdHJ1Y3QgcmVzb3VyY2UgKnIg PSAgJmRldi0+cmVzb3VyY2VbNF07Ci0rCi0rCWlmICghKHItPmZsYWdzICYgSU9SRVNPVVJDRV9N RU0pIHx8IChyLT5zdGFydCA9PSAwKSkKLSsJCXJldHVybjsKLSsKLSsJLyogU2V0IEJBUjUgcmVz b3VyY2UgdG8gQkFSNCAqLwotKwlkZXYtPnJlc291cmNlWzVdID0gKnI7Ci0rCi0rCS8qIFVwZGF0 ZSBCQVI1IGluIHBjaSBjb25maWcgc3BhY2UgKi8KLSsJcGNpX3dyaXRlX2NvbmZpZ19kd29yZChk ZXYsIFBDSV9CQVNFX0FERFJFU1NfNSwgci0+c3RhcnQpOwotKwotKwkvKiBDbGVhciBCQVI0J3Mg cmVzb3VyY2UgKi8KLSsJbWVtc2V0KHIsIDAsIHNpemVvZigqcikpOwotK30KLStERUNMQVJFX1BD SV9GSVhVUF9IRUFERVIoUENJX1ZFTkRPUl9JRF9CUk9BRENPTSwgMHg5MDI3LCBxdWlya19maXhf dnVsY2FuX2FoY2lfYmFycyk7Ci0rCi0gLyoKLSAgKiBJbnRlcnNpbC9UZWNod2VsbCBUVzY4Nls0 NTg5XS1iYXNlZCB2aWRlbyBjYXB0dXJlIGNhcmRzIGhhdmUgYW4gZW1wdHkgKHplcm8pCi0gICog Y2xhc3MgY29kZS4gIEZpeCBpdC4KLWRpZmYgLS1naXQgYS9kcml2ZXJzL3Njc2kvaHBzYS5jIGIv ZHJpdmVycy9zY3NpL2hwc2EuYwotaW5kZXggOGVkYWQxODMwYWJlLi5lNTU4YWNlZGZhNDQgMTAw NjQ0Ci0tLS0gYS9kcml2ZXJzL3Njc2kvaHBzYS5jCi0rKysgYi9kcml2ZXJzL3Njc2kvaHBzYS5j Ci1AQCAtODIsNyArODIsOSBAQCBNT0RVTEVfREVTQ1JJUFRJT04oIkRyaXZlciBmb3IgSFAgU21h cnQgQXJyYXkgQ29udHJvbGxlciB2ZXJzaW9uICIgXAotIAlIUFNBX0RSSVZFUl9WRVJTSU9OKTsK LSBNT0RVTEVfVkVSU0lPTihIUFNBX0RSSVZFUl9WRVJTSU9OKTsKLSBNT0RVTEVfTElDRU5TRSgi R1BMIik7Ci0rI2lmbmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotIE1PRFVMRV9BTElBUygi Y2Npc3MiKTsKLSsjZW5kaWYKLSAKLSBzdGF0aWMgaW50IGhwc2Ffc2ltcGxlX21vZGU7Ci0gbW9k dWxlX3BhcmFtKGhwc2Ffc2ltcGxlX21vZGUsIGludCwgU19JUlVHT3xTX0lXVVNSKTsKLUBAIC0x NDQsMTAgKzE0NiwxMiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgaHBzYV9w Y2lfZGV2aWNlX2lkW10gPSB7Ci0gCXtQQ0lfVkVORE9SX0lEX0hQXzNQQVIsIDB4MDA3NSwgMHgx NTkwLCAweDAwN0R9LAotIAl7UENJX1ZFTkRPUl9JRF9IUF8zUEFSLCAweDAwNzUsIDB4MTU5MCwg MHgwMDg4fSwKLSAJe1BDSV9WRU5ET1JfSURfSFAsIDB4MzMzZiwgMHgxMDNjLCAweDMzM2Z9LAot KyNpZm5kZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSAJe1BDSV9WRU5ET1JfSURfSFAsICAg ICBQQ0lfQU5ZX0lELAlQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELAotIAkJUENJX0NMQVNTX1NUT1JB R0VfUkFJRCA8PCA4LCAweGZmZmYgPDwgOCwgMH0sCi0gCXtQQ0lfVkVORE9SX0lEX0NPTVBBUSwg ICAgIFBDSV9BTllfSUQsCVBDSV9BTllfSUQsIFBDSV9BTllfSUQsCi0gCQlQQ0lfQ0xBU1NfU1RP UkFHRV9SQUlEIDw8IDgsIDB4ZmZmZiA8PCA4LCAwfSwKLSsjZW5kaWYKLSAJezAsfQotIH07Ci0g Ci1kaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL3FsYTJ4eHgvcWxhX29zLmMgYi9kcml2ZXJzL3Nj c2kvcWxhMnh4eC9xbGFfb3MuYwotaW5kZXggNzJiMWMyOGU0ZGFlLi4yMjI2YzlkZmZhOTQgMTAw NjQ0Ci0tLS0gYS9kcml2ZXJzL3Njc2kvcWxhMnh4eC9xbGFfb3MuYwotKysrIGIvZHJpdmVycy9z Y3NpL3FsYTJ4eHgvcWxhX29zLmMKLUBAIC04MTI4LDYgKzgxMjgsNyBAQCBzdGF0aWMgY29uc3Qg c3RydWN0IHBjaV9lcnJvcl9oYW5kbGVycyBxbGEyeHh4X2Vycl9oYW5kbGVyID0gewotIH07Ci0g Ci0gc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkIHFsYTJ4eHhfcGNpX3RibFtdID0g ewotKyNpZm5kZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSAJeyBQQ0lfREVWSUNFKFBDSV9W RU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1AyMTAwKSB9LAotIAl7IFBD SV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDIy MDApIH0sCi0gCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklDRV9J RF9RTE9HSUNfSVNQMjMwMCkgfSwKLUBAIC04MTQwLDEzICs4MTQxLDE4IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgcGNpX2RldmljZV9pZCBxbGEyeHh4X3BjaV90YmxbXSA9IHsKLSAJeyBQQ0lfREVW SUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1A4NDMyKSB9 LAotIAl7IFBDSV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxP R0lDX0lTUDU0MjIpIH0sCi0gCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJ X0RFVklDRV9JRF9RTE9HSUNfSVNQNTQzMikgfSwKLSsjZW5kaWYKLSAJeyBQQ0lfREVWSUNFKFBD SV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1AyNTMyKSB9LAotIAl7 IFBDSV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lT UDIwMzEpIH0sCi0rI2lmbmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotIAl7IFBDSV9ERVZJ Q0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDgwMDEpIH0s Ci0gCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklDRV9JRF9RTE9H SUNfSVNQODAyMSkgfSwKLSsjZW5kaWYKLSAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfUUxP R0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1A4MDMxKSB9LAotKyNpZm5kZWYgQ09ORklHX1JI RUxfRElGRkVSRU5DRVMKLSAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lf REVWSUNFX0lEX1FMT0dJQ19JU1BGMDAxKSB9LAotIAl7IFBDSV9ERVZJQ0UoUENJX1ZFTkRPUl9J RF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDgwNDQpIH0sCi0rI2VuZGlmCi0gCXsg UENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklDRV9JRF9RTE9HSUNfSVNQ MjA3MSkgfSwKLSAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNF X0lEX1FMT0dJQ19JU1AyMjcxKSB9LAotIAl7IFBDSV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9H SUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDIyNjEpIH0sCi1kaWZmIC0tZ2l0IGEvZHJpdmVy cy9zY3NpL3NkLmMgYi9kcml2ZXJzL3Njc2kvc2QuYwotaW5kZXggNTk5ZTc1ZjMzMzM0Li5lYzUy YzNhNGZhMTQgMTAwNjQ0Ci0tLS0gYS9kcml2ZXJzL3Njc2kvc2QuYwotKysrIGIvZHJpdmVycy9z Y3NpL3NkLmMKLUBAIC0xNDUsNiArMTQ1LDEzIEBAIHN0YXRpYyB2b2lkIHNkX2xhcmdlX3Bvb2xf ZGVzdHJveSh2b2lkKQotIAl9Ci0gCW11dGV4X3VubG9jaygmc2RfbXV0ZXhfbG9jayk7Ci0gfQot KyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotK3N0YXRpYyBjaGFyIHNkX3Byb2JlX3R5 cGVbNl0gPSAiYXN5bmMiOwotK21vZHVsZV9wYXJhbV9zdHJpbmcocHJvYmUsIHNkX3Byb2JlX3R5 cGUsIHNpemVvZihzZF9wcm9iZV90eXBlKSwKLSsJCSAgICBTX0lSVUdPfFNfSVdVU1IpOwotK01P RFVMRV9QQVJNX0RFU0MocHJvYmUsICJhc3luYyBvciBzeW5jLiBTZXR0aW5nIHRvICdzeW5jJyBk aXNhYmxlcyBhc3luY2hyb25vdXMgIgotKwkJICJkZXZpY2UgbnVtYmVyIGFzc2lnbm1lbnRzIChz ZGEsIHNkYiwgLi4uKS4iKTsKLSsjZW5kaWYKLSAKLSBzdGF0aWMgdm9pZCBzZF9kaXNhYmxlX2Rp c2NhcmQoc3RydWN0IHNjc2lfZGlzayAqc2RrcCkKLSB7Ci1AQCAtNDQ2MCw2ICs0NDY3LDExIEBA IHN0YXRpYyBpbnQgX19pbml0IGluaXRfc2Qodm9pZCkKLSAJCWdvdG8gZXJyX291dF9jbGFzczsK LSAJfQotIAotKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotKwlpZiAoIXN0cmNtcChz ZF9wcm9iZV90eXBlLCAic3luYyIpKQotKwkJc2RfdGVtcGxhdGUuZ2VuZHJ2LnByb2JlX3R5cGUg PSBQUk9CRV9GT1JDRV9TWU5DSFJPTk9VUzsKLSsjZW5kaWYKLSsKLSAJZXJyID0gc2NzaV9yZWdp c3Rlcl9kcml2ZXIoJnNkX3RlbXBsYXRlKTsKLSAJaWYgKGVycikKLSAJCWdvdG8gZXJyX291dF9k cml2ZXI7Ci1kaWZmIC0tZ2l0IGEvZHJpdmVycy91c2IvY29yZS9odWIuYyBiL2RyaXZlcnMvdXNi L2NvcmUvaHViLmMKLWluZGV4IGQ5MmJmODg3NzM5ZC4uMDM5ZmQ1NjIwMjgyIDEwMDY0NAotLS0t IGEvZHJpdmVycy91c2IvY29yZS9odWIuYwotKysrIGIvZHJpdmVycy91c2IvY29yZS9odWIuYwot QEAgLTU5MDIsNiArNTkwMiwxMyBAQCBzdGF0aWMgdm9pZCBodWJfZXZlbnQoc3RydWN0IHdvcmtf c3RydWN0ICp3b3JrKQotIAkJCSh1MTYpIGh1Yi0+Y2hhbmdlX2JpdHNbMF0sCi0gCQkJKHUxNikg aHViLT5ldmVudF9iaXRzWzBdKTsKLSAKLSsJLyogRG9uJ3QgZGlzY29ubmVjdCBVU0ItU0FUQSBv biBUcmltU2xpY2UgKi8KLSsJaWYgKHN0cmNtcChkZXZfbmFtZShoZGV2LT5idXMtPmNvbnRyb2xs ZXIpLCAidGVncmEtZWhjaS4wIikgPT0gMCkgewotKwkJaWYgKChoZGV2LT5zdGF0ZSA9PSA3KSAm JiAoaHViLT5jaGFuZ2VfYml0c1swXSA9PSAwKSAmJgotKwkJCQkoaHViLT5ldmVudF9iaXRzWzBd ID09IDB4MikpCi0rCQkJaHViLT5ldmVudF9iaXRzWzBdID0gMDsKLSsJfQotKwotIAkvKiBMb2Nr IHRoZSBkZXZpY2UsIHRoZW4gY2hlY2sgdG8gc2VlIGlmIHdlIHdlcmUKLSAJICogZGlzY29ubmVj dGVkIHdoaWxlIHdhaXRpbmcgZm9yIHRoZSBsb2NrIHRvIHN1Y2NlZWQuICovCi0gCXVzYl9sb2Nr X2RldmljZShoZGV2KTsKLWRpZmYgLS1naXQgYS9mcy9hZnMvbWFpbi5jIGIvZnMvYWZzL21haW4u YwotaW5kZXggN2E4ODNjNTk5NzZmLi45MDdlYzYwZTUwMGEgMTAwNjQ0Ci0tLS0gYS9mcy9hZnMv bWFpbi5jCi0rKysgYi9mcy9hZnMvbWFpbi5jCi1AQCAtMTk0LDYgKzE5NCw5IEBAIHN0YXRpYyBp bnQgX19pbml0IGFmc19pbml0KHZvaWQpCi0gCQlnb3RvIGVycm9yX3Byb2M7Ci0gCX0KLSAKLSsj aWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKLSsJbWFya19wYXJ0bmVyX3N1cHBvcnRlZChL QlVJTERfTU9ETkFNRSwgVEhJU19NT0RVTEUpOwotKyNlbmRpZgotIAlyZXR1cm4gcmV0OwotIAot IGVycm9yX3Byb2M6Ci1kaWZmIC0tZ2l0IGEvZnMvZXJvZnMvc3VwZXIuYyBiL2ZzL2Vyb2ZzL3N1 cGVyLmMKLWluZGV4IDlkOGY4NjJmMzA5Zi4uM2UxZWRlM2U0ZjdiIDEwMDY0NAotLS0tIGEvZnMv ZXJvZnMvc3VwZXIuYwotKysrIGIvZnMvZXJvZnMvc3VwZXIuYwotQEAgLTU5OSw2ICs1OTksOSBA QCBzdGF0aWMgaW50IGVyb2ZzX2ZjX2ZpbGxfc3VwZXIoc3RydWN0IHN1cGVyX2Jsb2NrICpzYiwg c3RydWN0IGZzX2NvbnRleHQgKmZjKQotIHsKLSAJc3RydWN0IGlub2RlICppbm9kZTsKLSAJc3Ry dWN0IGVyb2ZzX3NiX2luZm8gKnNiaSA9IEVST0ZTX1NCKHNiKTsKLSsjaWZkZWYgQ09ORklHX1JI RUxfRElGRkVSRU5DRVMKLSsJc3RhdGljIGJvb2wgcHJpbnRlZCA9IGZhbHNlOwotKyNlbmRpZgot IAlpbnQgZXJyOwotIAotIAlzYi0+c19tYWdpYyA9IEVST0ZTX1NVUEVSX01BR0lDOwotQEAgLTcz OCw2ICs3NDEsMTIgQEAgc3RhdGljIGludCBlcm9mc19mY19maWxsX3N1cGVyKHN0cnVjdCBzdXBl cl9ibG9jayAqc2IsIHN0cnVjdCBmc19jb250ZXh0ICpmYykKLSAKLSAJc2JpLT5kaXJfcmFfYnl0 ZXMgPSBFUk9GU19ESVJfUkFfQllURVM7Ci0gCWVyb2ZzX2luZm8oc2IsICJtb3VudGVkIHdpdGgg cm9vdCBpbm9kZSBAIG5pZCAlbGx1LiIsIHNiaS0+cm9vdF9uaWQpOwotKyNpZmRlZiBDT05GSUdf UkhFTF9ESUZGRVJFTkNFUwotKwlpZiAoIXByaW50ZWQpIHsKLSsJCW1hcmtfdGVjaF9wcmV2aWV3 KCJFUk9GUyBmaWxlc3lzdGVtIiwgTlVMTCk7Ci0rCQlwcmludGVkID0gdHJ1ZTsKLSsgICAgICAg fQotKyNlbmRpZgotIAlyZXR1cm4gMDsKLSB9Ci0gCi1kaWZmIC0tZ2l0IGEvZnMvZXh0NC9zdXBl ci5jIGIvZnMvZXh0NC9zdXBlci5jCi1pbmRleCAyNDVmNjdkMTBkZWQuLmYxZTQ5ZDM3YjI3MCAx MDA2NDQKLS0tLSBhL2ZzL2V4dDQvc3VwZXIuYwotKysrIGIvZnMvZXh0NC9zdXBlci5jCi1AQCAt NTczOSw2ICs1NzM5LDE3IEBAIHN0YXRpYyBpbnQgX19leHQ0X2ZpbGxfc3VwZXIoc3RydWN0IGZz X2NvbnRleHQgKmZjLCBzdHJ1Y3Qgc3VwZXJfYmxvY2sgKnNiKQotIAlhdG9taWNfc2V0KCZzYmkt PnNfd2FybmluZ19jb3VudCwgMCk7Ci0gCWF0b21pY19zZXQoJnNiaS0+c19tc2dfY291bnQsIDAp OwotIAotKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotKwlpZiAoZXh0NF9oYXNfZmVh dHVyZV92ZXJpdHkoc2IpKSB7Ci0rCQlzdGF0aWMgYm9vbCBwcmludGVkID0gZmFsc2U7Ci0rCi0r CQlpZiAoIXByaW50ZWQpIHsKLSsJCQltYXJrX3RlY2hfcHJldmlldygiZnMtdmVyaXR5IG9uIGV4 dDQiLCBOVUxMKTsKLSsJCQlwcmludGVkID0gdHJ1ZTsKLSsJCX0KLSsJfQotKyNlbmRpZgotKwot IAkvKiBSZWdpc3RlciBzeXNmcyBhZnRlciBhbGwgaW5pdGlhbGl6YXRpb25zIGFyZSBjb21wbGV0 ZS4gKi8KLSAJZXJyID0gZXh0NF9yZWdpc3Rlcl9zeXNmcyhzYik7Ci0gCWlmIChlcnIpCi1kaWZm IC0tZ2l0IGEvaW5jbHVkZS9saW51eC9jcnlwdG8uaCBiL2luY2x1ZGUvbGludXgvY3J5cHRvLmgK LWluZGV4IGI3Yzk3ZjFjNDdjOS4uMGE0ODRmNDViMjRhIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9s aW51eC9jcnlwdG8uaAotKysrIGIvaW5jbHVkZS9saW51eC9jcnlwdG8uaAotQEAgLTE1Miw2ICsx NTIsOCBAQAotICNkZWZpbmUgQ1JZUFRPX1RGTV9SRVFfTUFZX0JBQ0tMT0cJMHgwMDAwMDQwMAot ICNkZWZpbmUgQ1JZUFRPX1RGTV9SRVFfT05fU1RBQ0sJCTB4MDAwMDA4MDAKLSAKLSsjZGVmaW5l IENSWVBUT19URk1fRklQU19DT01QTElBTkNFCTB4ODAwMDAwMDAKLSsKLSAvKgotICAqIE1pc2Nl bGxhbmVvdXMgc3R1ZmYuCi0gICovCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9lZmkuaCBi L2luY2x1ZGUvbGludXgvZWZpLmgKLWluZGV4IGNjYmMzNTQ3OTY4NC4uOGViOWExMjc2YmE3IDEw MDY0NAotLS0tIGEvaW5jbHVkZS9saW51eC9lZmkuaAotKysrIGIvaW5jbHVkZS9saW51eC9lZmku aAotQEAgLTQ1LDYgKzQ1LDggQEAgc3RydWN0IHNjcmVlbl9pbmZvOwotICNkZWZpbmUgRUZJX0FC T1JURUQJCSgyMSB8ICgxVUwgPDwgKEJJVFNfUEVSX0xPTkctMSkpKQotICNkZWZpbmUgRUZJX1NF Q1VSSVRZX1ZJT0xBVElPTgkoMjYgfCAoMVVMIDw8IChCSVRTX1BFUl9MT05HLTEpKSkKLSAKLSsj ZGVmaW5lIEVGSV9JU19FUlJPUih4KQkJKCh4KSAmICgxVUwgPDwgKEJJVFNfUEVSX0xPTkctMSkp KQotKwotIHR5cGVkZWYgdW5zaWduZWQgbG9uZyBlZmlfc3RhdHVzX3Q7Ci0gdHlwZWRlZiB1OCBl ZmlfYm9vbF90OwotIHR5cGVkZWYgdTE2IGVmaV9jaGFyMTZfdDsJCS8qIFVOSUNPREUgY2hhcmFj dGVyICovCi1AQCAtODQ3LDYgKzg0OSwxNCBAQCBleHRlcm4gaW50IF9faW5pdCBwYXJzZV9lZmlf c2lnbmF0dXJlX2xpc3QoCi0gI2RlZmluZSBFRklfTUVNX0FUVFIJCTkJLyogRGlkIGZpcm13YXJl IHB1Ymxpc2ggYW4gRUZJX01FTU9SWV9BVFRSSUJVVEVTIHRhYmxlPyAqLwotICNkZWZpbmUgRUZJ X01FTV9OT19TT0ZUX1JFU0VSVkUJMTAJLyogSXMgdGhlIGtlcm5lbCBjb25maWd1cmVkIHRvIGln bm9yZSBzb2Z0IHJlc2VydmF0aW9ucz8gKi8KLSAjZGVmaW5lIEVGSV9QUkVTRVJWRV9CU19SRUdJ T05TCTExCS8qIEFyZSBFRkkgYm9vdC1zZXJ2aWNlcyBtZW1vcnkgc2VnbWVudHMgYXZhaWxhYmxl PyAqLwotKyNkZWZpbmUgRUZJX1NFQ1VSRV9CT09UCQkxMgkvKiBBcmUgd2UgaW4gU2VjdXJlIEJv b3QgbW9kZT8gKi8KLSsKLStlbnVtIGVmaV9zZWN1cmVib290X21vZGUgewotKwllZmlfc2VjdXJl Ym9vdF9tb2RlX3Vuc2V0LAotKwllZmlfc2VjdXJlYm9vdF9tb2RlX3Vua25vd24sCi0rCWVmaV9z ZWN1cmVib290X21vZGVfZGlzYWJsZWQsCi0rCWVmaV9zZWN1cmVib290X21vZGVfZW5hYmxlZCwK LSt9OwotIAotICNpZmRlZiBDT05GSUdfRUZJCi0gLyoKLUBAIC04NTgsNiArODY4LDggQEAgc3Rh dGljIGlubGluZSBib29sIGVmaV9lbmFibGVkKGludCBmZWF0dXJlKQotIH0KLSBleHRlcm4gdm9p ZCBlZmlfcmVib290KGVudW0gcmVib290X21vZGUgcmVib290X21vZGUsIGNvbnN0IGNoYXIgKl9f dW51c2VkKTsKLSAKLStleHRlcm4gdm9pZCBfX2luaXQgZWZpX3NldF9zZWN1cmVfYm9vdChlbnVt IGVmaV9zZWN1cmVib290X21vZGUgbW9kZSk7Ci0rCi0gYm9vbCBfX3B1cmUgX19lZmlfc29mdF9y ZXNlcnZlX2VuYWJsZWQodm9pZCk7Ci0gCi0gc3RhdGljIGlubGluZSBib29sIF9fcHVyZSBlZmlf c29mdF9yZXNlcnZlX2VuYWJsZWQodm9pZCkKLUBAIC04NzksNiArODkxLDggQEAgc3RhdGljIGlu bGluZSBib29sIGVmaV9lbmFibGVkKGludCBmZWF0dXJlKQotIHN0YXRpYyBpbmxpbmUgdm9pZAot IGVmaV9yZWJvb3QoZW51bSByZWJvb3RfbW9kZSByZWJvb3RfbW9kZSwgY29uc3QgY2hhciAqX191 bnVzZWQpIHt9Ci0gCi0rc3RhdGljIGlubGluZSB2b2lkIGVmaV9zZXRfc2VjdXJlX2Jvb3QoZW51 bSBlZmlfc2VjdXJlYm9vdF9tb2RlIG1vZGUpIHt9Ci0rCi0gc3RhdGljIGlubGluZSBib29sIGVm aV9zb2Z0X3Jlc2VydmVfZW5hYmxlZCh2b2lkKQotIHsKLSAJcmV0dXJuIGZhbHNlOwotQEAgLTg5 Myw2ICs5MDcsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZWZpX2ZpbmRfbWlycm9yKHZvaWQpIHt9 Ci0gI2VuZGlmCi0gCi0gZXh0ZXJuIGludCBlZmlfc3RhdHVzX3RvX2VycihlZmlfc3RhdHVzX3Qg c3RhdHVzKTsKLStleHRlcm4gY29uc3QgY2hhciAqZWZpX3N0YXR1c190b19zdHIoZWZpX3N0YXR1 c190IHN0YXR1cyk7Ci0gCi0gLyoKLSAgKiBWYXJpYWJsZSBBdHRyaWJ1dGVzCi1AQCAtMTExMCwx MyArMTEyNSw2IEBAIGV4dGVybiB1bnNpZ25lZCBsb25nIGVmaV9jYWxsX3ZpcnRfc2F2ZV9mbGFn cyh2b2lkKTsKLSAKLSB2b2lkIGVmaV9ydW50aW1lX2Fzc2VydF9sb2NrX2hlbGQodm9pZCk7Ci0g Ci0tZW51bSBlZmlfc2VjdXJlYm9vdF9tb2RlIHsKLS0JZWZpX3NlY3VyZWJvb3RfbW9kZV91bnNl dCwKLS0JZWZpX3NlY3VyZWJvb3RfbW9kZV91bmtub3duLAotLQllZmlfc2VjdXJlYm9vdF9tb2Rl X2Rpc2FibGVkLAotLQllZmlfc2VjdXJlYm9vdF9tb2RlX2VuYWJsZWQsCi0tfTsKLS0KLSBzdGF0 aWMgaW5saW5lCi0gZW51bSBlZmlfc2VjdXJlYm9vdF9tb2RlIGVmaV9nZXRfc2VjdXJlYm9vdF9t b2RlKGVmaV9nZXRfdmFyaWFibGVfdCAqZ2V0X3ZhcikKLSB7Ci1kaWZmIC0tZ2l0IGEvaW5jbHVk ZS9saW51eC9rZXJuZWwuaCBiL2luY2x1ZGUvbGludXgva2VybmVsLmgKLWluZGV4IGU1NTcwYTE2 Y2JiMS4uODI5NDViNDc0ZTJlIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9saW51eC9rZXJuZWwuaAot KysrIGIvaW5jbHVkZS9saW51eC9rZXJuZWwuaAotQEAgLTE5NCw0ICsxOTQsMzIgQEAgZXh0ZXJu IGVudW0gc3lzdGVtX3N0YXRlcyBzeXN0ZW1fc3RhdGU7Ci0gIyBkZWZpbmUgUkVCVUlMRF9EVUVf VE9fRFlOQU1JQ19GVFJBQ0UKLSAjZW5kaWYKLSAKLSsvKiBQZXJtaXNzaW9ucyBvbiBhIHN5c2Zz IGZpbGU6IHlvdSBkaWRuJ3QgbWlzcyB0aGUgMCBwcmVmaXggZGlkIHlvdT8gKi8KLSsjZGVmaW5l IFZFUklGWV9PQ1RBTF9QRVJNSVNTSU9OUyhwZXJtcykJCQkJCQlcCi0rCShCVUlMRF9CVUdfT05f WkVSTygocGVybXMpIDwgMCkgKwkJCQkJXAotKwkgQlVJTERfQlVHX09OX1pFUk8oKHBlcm1zKSA+ IDA3NzcpICsJCQkJCVwKLSsJIC8qIFVTRVJfUkVBREFCTEUgPj0gR1JPVVBfUkVBREFCTEUgPj0g T1RIRVJfUkVBREFCTEUgKi8JCVwKLSsJIEJVSUxEX0JVR19PTl9aRVJPKCgoKHBlcm1zKSA+PiA2 KSAmIDQpIDwgKCgocGVybXMpID4+IDMpICYgNCkpICsJXAotKwkgQlVJTERfQlVHX09OX1pFUk8o KCgocGVybXMpID4+IDMpICYgNCkgPCAoKHBlcm1zKSAmIDQpKSArCQlcCi0rCSAvKiBVU0VSX1dS SVRBQkxFID49IEdST1VQX1dSSVRBQkxFICovCQkJCQlcCi0rCSBCVUlMRF9CVUdfT05fWkVSTygo KChwZXJtcykgPj4gNikgJiAyKSA8ICgoKHBlcm1zKSA+PiAzKSAmIDIpKSArCVwKLSsJIC8qIE9U SEVSX1dSSVRBQkxFPyAgR2VuZXJhbGx5IGNvbnNpZGVyZWQgYSBiYWQgaWRlYS4gKi8JCVwKLSsJ IEJVSUxEX0JVR19PTl9aRVJPKChwZXJtcykgJiAyKSArCQkJCQlcCi0rCSAocGVybXMpKQotKwot K3N0cnVjdCBtb2R1bGU7Ci0rCi0rI2lmZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCi0rdm9p ZCBtYXJrX2hhcmR3YXJlX3VubWFpbnRhaW5lZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwgY2hh ciAqZm10LCAuLi4pOwotK3ZvaWQgbWFya19oYXJkd2FyZV9kZXByZWNhdGVkKGNvbnN0IGNoYXIg KmRyaXZlcl9uYW1lLCBjaGFyICpmbXQsIC4uLik7Ci0rdm9pZCBtYXJrX3RlY2hfcHJldmlldyhj b25zdCBjaGFyICptc2csIHN0cnVjdCBtb2R1bGUgKm1vZCk7Ci0rdm9pZCBtYXJrX3BhcnRuZXJf c3VwcG9ydGVkKGNvbnN0IGNoYXIgKm1zZywgc3RydWN0IG1vZHVsZSAqbW9kKTsKLSt2b2lkIGlu aXRfcmhfY2hlY2tfc3RhdHVzKGNoYXIgKmZuX25hbWUpOwotKyNlbHNlCi0rc3RhdGljIGlubGlu ZSB2b2lkIG1hcmtfaGFyZHdhcmVfdW5tYWludGFpbmVkKGNvbnN0IGNoYXIgKmRyaXZlcl9uYW1l LCBjaGFyICpmbXQsIC4uLikgeyB9Ci0rc3RhdGljIGlubGluZSB2b2lkIG1hcmtfaGFyZHdhcmVf ZGVwcmVjYXRlZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwgY2hhciAqZm10LCAuLi4pIHsgfQot K3N0YXRpYyBpbmxpbmUgdm9pZCBtYXJrX3RlY2hfcHJldmlldyhjb25zdCBjaGFyICptc2csIHN0 cnVjdCBtb2R1bGUgKm1vZCkgeyB9Ci0rc3RhdGljIGlubGluZSB2b2lkIG1hcmtfcGFydG5lcl9z dXBwb3J0ZWQoY29uc3QgY2hhciAqbXNnLCBzdHJ1Y3QgbW9kdWxlICptb2QpIHsgfQotKyNlbmRp ZgotKwotICNlbmRpZgotZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbHNtX2hvb2tfZGVmcy5o IGIvaW5jbHVkZS9saW51eC9sc21faG9va19kZWZzLmgKLWluZGV4IDY1Yzk2MDllYzIwNy4uMmNj MjQzZWM3M2Y2IDEwMDY0NAotLS0tIGEvaW5jbHVkZS9saW51eC9sc21faG9va19kZWZzLmgKLSsr KyBiL2luY2x1ZGUvbGludXgvbHNtX2hvb2tfZGVmcy5oCi1AQCAtNDU2LDYgKzQ1Niw3IEBAIExT TV9IT09LKGludCwgMCwgYnBmX3Rva2VuX2NhcGFibGUsIGNvbnN0IHN0cnVjdCBicGZfdG9rZW4g KnRva2VuLCBpbnQgY2FwKQotIAotIExTTV9IT09LKGludCwgMCwgbG9ja2VkX2Rvd24sIGVudW0g bG9ja2Rvd25fcmVhc29uIHdoYXQpCi0gCi0rCi0gI2lmZGVmIENPTkZJR19QRVJGX0VWRU5UUwot IExTTV9IT09LKGludCwgMCwgcGVyZl9ldmVudF9vcGVuLCBpbnQgdHlwZSkKLSBMU01fSE9PSyhp bnQsIDAsIHBlcmZfZXZlbnRfYWxsb2MsIHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKLWRpZmYg LS1naXQgYS9pbmNsdWRlL2xpbnV4L21vZHVsZS5oIGIvaW5jbHVkZS9saW51eC9tb2R1bGUuaAot aW5kZXggNzU2NjgxNWZhYmJlLi5mMThhZjdmZGI0NWIgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRlL2xp bnV4L21vZHVsZS5oCi0rKysgYi9pbmNsdWRlL2xpbnV4L21vZHVsZS5oCi1AQCAtNDEzLDYgKzQx Myw3IEBAIHN0cnVjdCBtb2R1bGUgewotIAlzdHJ1Y3QgbW9kdWxlX2F0dHJpYnV0ZSAqbW9kaW5m b19hdHRyczsKLSAJY29uc3QgY2hhciAqdmVyc2lvbjsKLSAJY29uc3QgY2hhciAqc3JjdmVyc2lv bjsKLSsJY29uc3QgY2hhciAqcmhlbHZlcnNpb247Ci0gCWNvbnN0IGNoYXIgKmltcG9ydGVkX25h bWVzcGFjZXM7Ci0gCXN0cnVjdCBrb2JqZWN0ICpob2xkZXJzX2RpcjsKLSAKLUBAIC0xMDIwLDYg KzEwMjEsMTAgQEAgc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nIGZpbmRfa2FsbHN5bXNfc3lt Ym9sX3ZhbHVlKHN0cnVjdCBtb2R1bGUgKm1vZCwKLSAKLSAjZW5kaWYgIC8qIENPTkZJR19NT0RV TEVTICYmIENPTkZJR19LQUxMU1lNUyAqLwotIAotKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJF TkNFUwotK3ZvaWQgbW9kdWxlX3JoX2NoZWNrX3N0YXR1cyhjb25zdCBjaGFyICogbW9kdWxlX25h bWUpOwotKyNlbmRpZgotKwotIC8qIERlZmluZSBfX2ZyZWUobW9kdWxlX3B1dCkgbWFjcm8gZm9y IHN0cnVjdCBtb2R1bGUgKi4gKi8KLSBERUZJTkVfRlJFRShtb2R1bGVfcHV0LCBzdHJ1Y3QgbW9k dWxlICosIGlmIChfVCkgbW9kdWxlX3B1dChfVCkpCi0gCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9s aW51eC9wYW5pYy5oIGIvaW5jbHVkZS9saW51eC9wYW5pYy5oCi1pbmRleCBmMWRkNDE3ZTU0YjIu Ljk1MzQ0MjgxZWQyYyAxMDA2NDQKLS0tLSBhL2luY2x1ZGUvbGludXgvcGFuaWMuaAotKysrIGIv aW5jbHVkZS9saW51eC9wYW5pYy5oCi1AQCAtODgsNyArODgsMjIgQEAgc3RhdGljIGlubGluZSB2 b2lkIHNldF9hcmNoX3BhbmljX3RpbWVvdXQoaW50IHRpbWVvdXQsIGludCBhcmNoX2RlZmF1bHRf dGltZW91dCkKLSAjZGVmaW5lIFRBSU5UX1JBTkRTVFJVQ1QJCTE3Ci0gI2RlZmluZSBUQUlOVF9U RVNUCQkJMTgKLSAjZGVmaW5lIFRBSU5UX0ZXQ1RMCQkJMTkKLS0jZGVmaW5lIFRBSU5UX0ZMQUdT X0NPVU5UCQkyMAotKy8qIFN0YXJ0IG9mIFJlZCBIYXQtc3BlY2lmaWMgdGFpbnQgZmxhZ3MgKi8K LSsjZGVmaW5lIFRBSU5UXzIwCQkJMjAKLSsjZGVmaW5lIFRBSU5UXzIxCQkJMjEKLSsjZGVmaW5l IFRBSU5UXzIyCQkJMjIKLSsjZGVmaW5lIFRBSU5UXzIzCQkJMjMKLSsjZGVmaW5lIFRBSU5UXzI0 CQkJMjQKLSsjZGVmaW5lIFRBSU5UXzI1CQkJMjUKLSsjZGVmaW5lIFRBSU5UX1BBUlRORVJfU1VQ UE9SVEVEIAkyNgotKyNkZWZpbmUgVEFJTlRfU1VQUE9SVF9SRU1PVkVECQkyNwotKy8qIEJpdHMg MjggLSAzMSBhcmUgcmVzZXJ2ZWQgZm9yIFJlZCBIYXQgdXNlIG9ubHkgKi8KLSsjZGVmaW5lIFRB SU5UX1JFU0VSVkVEMjgJCTI4Ci0rI2RlZmluZSBUQUlOVF9SRVNFUlZFRDI5CQkyOQotKyNkZWZp bmUgVEFJTlRfUkVTRVJWRUQzMAkJMzAKLSsjZGVmaW5lIFRBSU5UX1VOUFJJVklMRUdFRF9CUEYJ CTMxCi0rLyogRW5kIG9mIFJlZCBIYXQtc3BlY2lmaWMgdGFpbnQgZmxhZ3MgKi8KLSsjZGVmaW5l IFRBSU5UX0ZMQUdTX0NPVU5UCQkzMgotICNkZWZpbmUgVEFJTlRfRkxBR1NfTUFYCQkJKCgxVUwg PDwgVEFJTlRfRkxBR1NfQ09VTlQpIC0gMSkKLSAKLSBzdHJ1Y3QgdGFpbnRfZmxhZyB7Ci1kaWZm IC0tZ2l0IGEvaW5jbHVkZS9saW51eC9wY2kuaCBiL2luY2x1ZGUvbGludXgvcGNpLmgKLWluZGV4 IDY0YjMwOGI2ZTYxYy4uMDk2N2Y5YmUwYjU0IDEwMDY0NAotLS0tIGEvaW5jbHVkZS9saW51eC9w Y2kuaAotKysrIGIvaW5jbHVkZS9saW51eC9wY2kuaAotQEAgLTE3MTUsNiArMTcxNSw3IEBAIGlu dCBwY2lfYWRkX2R5bmlkKHN0cnVjdCBwY2lfZHJpdmVyICpkcnYsCi0gCQkgIHVuc2lnbmVkIGxv bmcgZHJpdmVyX2RhdGEpOwotIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICpwY2lfbWF0Y2hf aWQoY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQgKmlkcywKLSAJCQkJCSBzdHJ1Y3QgcGNpX2Rl diAqZGV2KTsKLSsKLSBpbnQgcGNpX3NjYW5fYnJpZGdlKHN0cnVjdCBwY2lfYnVzICpidXMsIHN0 cnVjdCBwY2lfZGV2ICpkZXYsIGludCBtYXgsCi0gCQkgICAgaW50IHBhc3MpOwotIAotQEAgLTI4 NzksNiArMjg4MCwxMCBAQCBzdGF0aWMgaW5saW5lIGJvb2wgcGNpX2lzX3RodW5kZXJib2x0X2F0 dGFjaGVkKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQotIAlyZXR1cm4gZmFsc2U7Ci0gfQotIAotKyNp ZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotK2Jvb2wgcGNpX3JoX2NoZWNrX3N0YXR1cyhz dHJ1Y3QgcGNpX2RldiAqcGNpX2Rldik7Ci0rI2VuZGlmCi0rCi0gI2lmIGRlZmluZWQoQ09ORklH X1BDSUVQT1JUQlVTKSB8fCBkZWZpbmVkKENPTkZJR19FRUgpIHx8IGRlZmluZWQoQ09ORklHX1Mz OTApCi0gdm9pZCBwY2lfdWV2ZW50X2VycyhzdHJ1Y3QgcGNpX2RldiAqcGRldiwgZW51bSAgcGNp X2Vyc19yZXN1bHQgZXJyX3R5cGUpOwotICNlbmRpZgotZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGlu dXgvcmFuZG9tLmggYi9pbmNsdWRlL2xpbnV4L3JhbmRvbS5oCi1pbmRleCA4YTgwNjRkYzM5NzAu LjMyMzhmYWI4Zjc0OSAxMDA2NDQKLS0tLSBhL2luY2x1ZGUvbGludXgvcmFuZG9tLmgKLSsrKyBi L2luY2x1ZGUvbGludXgvcmFuZG9tLmgKLUBAIC05LDYgKzksMTMgQEAKLSAKLSAjaW5jbHVkZSA8 dWFwaS9saW51eC9yYW5kb20uaD4KLSAKLStzdHJ1Y3QgaW92X2l0ZXI7Ci0rCi0rc3RydWN0IHJh bmRvbV9leHRybmcgewotKwlzc2l6ZV90ICgqZXh0cm5nX3JlYWRfaXRlcikoc3RydWN0IGlvdl9p dGVyICppdGVyLCBib29sIHJlc2VlZCk7Ci0rCXN0cnVjdCBtb2R1bGUgKm93bmVyOwotK307Ci0r Ci0gc3RydWN0IG5vdGlmaWVyX2Jsb2NrOwotIAotIHZvaWQgYWRkX2RldmljZV9yYW5kb21uZXNz KGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbik7Ci1AQCAtMTM1LDYgKzE0Miw5IEBAIGludCBy YW5kb21fcHJlcGFyZV9jcHUodW5zaWduZWQgaW50IGNwdSk7Ci0gaW50IHJhbmRvbV9vbmxpbmVf Y3B1KHVuc2lnbmVkIGludCBjcHUpOwotICNlbmRpZgotIAotK3ZvaWQgcmFuZG9tX3JlZ2lzdGVy X2V4dHJuZyhjb25zdCBzdHJ1Y3QgcmFuZG9tX2V4dHJuZyAqcm5nKTsKLSt2b2lkIHJhbmRvbV91 bnJlZ2lzdGVyX2V4dHJuZyh2b2lkKTsKLSsKLSAjaWZuZGVmIE1PRFVMRQotIGV4dGVybiBjb25z dCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIHJhbmRvbV9mb3BzLCB1cmFuZG9tX2ZvcHM7Ci0gI2Vu ZGlmCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9yaF9mbGFncy5oIGIvaW5jbHVkZS9saW51 eC9yaF9mbGFncy5oCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAwLi40 YmIwZjU1ODVkZjAKLS0tLSAvZGV2L251bGwKLSsrKyBiL2luY2x1ZGUvbGludXgvcmhfZmxhZ3Mu aAotQEAgLTAsMCArMSwzNCBAQAotKy8qIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBHUEwtMi4w ICovCi0rLyoKLSsgKiByaF9mbGFncy5oIC0tIFJlZCBIYXQgZmxhZ3MgdHJhY2tpbmcKLSsgKgot KyAqIENvcHlyaWdodCAoYykgMjAxOCBSZWQgSGF0LCBJbmMuIC0tIEppcmkgQmVuYyA8amJlbmNA cmVkaGF0LmNvbT4KLSsgKgotKyAqIFRoZSBpbnRlbnQgb2YgdGhlIGZsYWcgdHJhY2tpbmcgaXMg dG8gcHJvdmlkZSBiZXR0ZXIgYW5kIG1vcmUgZm9jdXNlZAotKyAqIHN1cHBvcnQuIE9ubHkgdGhv c2UgZmxhZ3MgdGhhdCBhcmUgb2YgYSBzcGVjaWFsIGludGVyZXN0IGZvciBjdXN0b21lcgotKyAq IHN1cHBvcnQgc2hvdWxkIGJlIHRyYWNrZWQuCi0rICoKLSsgKiBUSEUgRkxBR1MgRE8gTk9UIEVY UFJFU1MgQU5ZIFNVUFBPUlQgUE9MSUNJRVMuCi0rICovCi0rCi0rI2lmbmRlZiBfTElOVVhfUkhf RkxBR1NfSAotKyNkZWZpbmUgX0xJTlVYX1JIX0ZMQUdTX0gKLSsKLSsjaWYgZGVmaW5lZCBDT05G SUdfUkhFTF9ESUZGRVJFTkNFUwotK2Jvb2wgX19yaF9hZGRfZmxhZyhjb25zdCBjaGFyICpmbGFn X25hbWUpOwotK3ZvaWQgcmhfcHJpbnRfZmxhZ3Modm9pZCk7Ci0rCi0rI2RlZmluZSByaF9hZGRf ZmxhZyhmbGFnX25hbWUpCQkJCQkJXAotKyh7CQkJCQkJCQkJXAotKwlzdGF0aWMgYm9vbCBfX21h cmtfb25jZSBfX3JlYWRfbW9zdGx5OwkJCQlcCi0rCWJvb2wgX19yZXRfbWFya19vbmNlID0gIV9f bWFya19vbmNlOwkJCQlcCi0rCQkJCQkJCQkJXAotKwlpZiAoIV9fbWFya19vbmNlKQkJCQkJCVwK LSsJCV9fbWFya19vbmNlID0gX19yaF9hZGRfZmxhZyhmbGFnX25hbWUpOwkJCVwKLSsJdW5saWtl bHkoX19yZXRfbWFya19vbmNlKTsJCQkJCVwKLSt9KQotKyNlbHNlCi0rc3RhdGljIGlubGluZSB2 b2lkIHJoX3ByaW50X2ZsYWdzKHZvaWQpIHsgfQotK3N0YXRpYyBpbmxpbmUgdm9pZCByaF9hZGRf ZmxhZyhjb25zdCBjaGFyICpmbGFnX25hbWUpIHsgfQotKyNlbmRpZgotKyNlbmRpZgotZGlmZiAt LWdpdCBhL2luY2x1ZGUvbGludXgvcmhfa2FiaS5oIGIvaW5jbHVkZS9saW51eC9yaF9rYWJpLmgK LW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMDAuLjUxMzljYjJjYWJkYwot LS0tIC9kZXYvbnVsbAotKysrIGIvaW5jbHVkZS9saW51eC9yaF9rYWJpLmgKLUBAIC0wLDAgKzEs NTQxIEBACi0rLyoKLSsgKiByaF9rYWJpLmggLSBSZWQgSGF0IGtBQkkgYWJzdHJhY3Rpb24gaGVh ZGVyCi0rICoKLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTQgRG9uIFppY2t1cwotKyAqIENvcHlyaWdo dCAoYykgMjAxNS0yMDIwIEppcmkgQmVuYwotKyAqIENvcHlyaWdodCAoYykgMjAxNSBTYWJyaW5h IER1YnJvY2EsIEhhbm5lcyBGcmVkZXJpYyBTb3dhCi0rICogQ29weXJpZ2h0IChjKSAyMDE2LTIw MTggUHJhcml0IEJoYXJnYXZhCi0rICogQ29weXJpZ2h0IChjKSAyMDE3IFBhb2xvIEFiZW5pLCBM YXJyeSBXb29kbWFuCi0rICoKLSsgKiBUaGlzIGZpbGUgaXMgcmVsZWFzZWQgdW5kZXIgdGhlIEdQ THYyLgotKyAqIFNlZSB0aGUgZmlsZSBDT1BZSU5HIGZvciBtb3JlIGRldGFpbHMuCi0rICoKLSsg KiBUaGVzZSBrYWJpIG1hY3JvcyBoaWRlIHRoZSBjaGFuZ2VzIGZyb20gdGhlIGthYmkgY2hlY2tl ciBhbmQgZnJvbSB0aGUKLSsgKiBwcm9jZXNzIHRoYXQgY29tcHV0ZXMgdGhlIGV4cG9ydGVkIHN5 bWJvbHMnIGNoZWNrc3Vtcy4KLSsgKiBUaGV5IGhhdmUgMiB2YXJpYW50czogb25lIChkZWZpbmVk IHVuZGVyIF9fR0VOS1NZTVNfXykgdXNlZCB3aGVuCi0rICogZ2VuZXJhdGluZyB0aGUgY2hlY2tz dW1zLCBhbmQgdGhlIG90aGVyIHVzZWQgd2hlbiBidWlsZGluZyB0aGUga2VybmVsJ3MKLSsgKiBi aW5hcmllcy4KLSsgKgotKyAqIFRoZSB1c2Ugb2YgdGhlc2UgbWFjcm9zIGRvZXMgbm90IGd1YXJh bnRlZSB0aGF0IHRoZSB1c2FnZSBhbmQgbW9kaWZpY2F0aW9uCi0rICogb2YgY29kZSBpcyBjb3Jy ZWN0LiAgQXMgd2l0aCBhbGwgUmVkIEhhdCBvbmx5IGNoYW5nZXMsIGFuIGVuZ2luZWVyIG11c3QK LSsgKiBleHBsYWluIHdoeSB0aGUgdXNlIG9mIHRoZSBtYWNybyBpcyB2YWxpZCBpbiB0aGUgcGF0 Y2ggY29udGFpbmluZyB0aGUKLSsgKiBjaGFuZ2VzLgotKyAqCi0rICovCi0rCi0rI2lmbmRlZiBf TElOVVhfUkhfS0FCSV9ICi0rI2RlZmluZSBfTElOVVhfUkhfS0FCSV9ICi0rCi0rI2luY2x1ZGUg PGxpbnV4L2tjb25maWcuaD4KLSsjaW5jbHVkZSA8bGludXgvY29tcGlsZXIuaD4KLSsjaW5jbHVk ZSA8bGludXgvc3RyaW5naWZ5Lmg+Ci0rCi0rLyoKLSsgKiBOT1RFCi0rICogICBVbmxlc3MgaW5k aWNhdGVkIG90aGVyd2lzZSwgZG9uJ3QgdXNlICc7JyBhZnRlciB0aGVzZSBtYWNyb3MgYXMgaXQK LSsgKiAgIG1lc3NlcyB1cCB0aGUga0FCSSBjaGVja2VyIGJ5IGNoYW5naW5nIHdoYXQgdGhlIHJl c3VsdGluZyB0b2tlbiBzdHJpbmcKLSsgKiAgIGxvb2tzIGxpa2UuICBJbnN0ZWFkIGxldCB0aGUg bWFjcm9zIGFkZCB0aGUgJzsnIHNvIGl0IGNhbiBiZSBwcm9wZXJseQotKyAqICAgaGlkZGVuIGZy b20gdGhlIGtBQkkgY2hlY2tlciAobWFpbmx5IGZvciBSSF9LQUJJX0VYVEVORCwgYnV0IGFwcGxp ZWQgdG8KLSsgKiAgIG1vc3QgbWFjcm9zIGZvciB1bmlmb3JtaXR5KS4KLSsgKgotKyAqCi0rICog UkhfS0FCSV9DT05TVAotKyAqICAgQWRkcyBhIG5ldyBjb25zdCBtb2RpZmllciB0byBhIGZ1bmN0 aW9uIHBhcmFtZXRlciBwcmVzZXJ2aW5nIHRoZSBvbGQKLSsgKiAgIGNoZWNrc3VtLgotKyAqCi0r ICogUkhfS0FCSV9BRERfTU9ESUZJRVIKLSsgKiAgIEFkZHMgYSBuZXcgbW9kaWZpZXIgdG8gYSBm dW5jdGlvbiBwYXJhbWV0ZXIgb3IgYSB0eXBlZGVmLCBwcmVzZXJ2aW5nCi0rICogICB0aGUgb2xk IGNoZWNrc3VtLiAgVXNlZnVsIGUuZy4gZm9yIGFkZGluZyByY3UgYW5ub3RhdGlvbnMgb3IgY2hh bmdpbmcKLSsgKiAgIGludCB0byB1bnNpZ25lZC4gIEJld2FyZSB0aGF0IHRoaXMgbWF5IGNoYW5n ZSB0aGUgc2VtYW50aWNzOyBpZiB5b3UncmUKLSsgKiAgIHN1cmUgdGhpcyBpcyBzYWZlLCBhbHdh eXMgZXhwbGFpbiB3aHkgYmluYXJ5IGNvbXBhdGliaWxpdHkgd2l0aCAzcmQKLSsgKiAgIHBhcnR5 IG1vZHVsZXMgaXMgcmV0YWluZWQuCi0rICoKLSsgKiBSSF9LQUJJX0RFUFJFQ0FURQotKyAqICAg TWFya3MgdGhlIGVsZW1lbnQgYXMgZGVwcmVjYXRlZCBhbmQgbWFrZSBpdCB1bnVzYWJsZSBieSBt b2R1bGVzIHdoaWxlCi0rICogICBrZWVwaW5nIGEgaG9sZSBpbiBpdHMgcGxhY2UgdG8gcHJlc2Vy dmUgYmluYXJ5IGNvbXBhdGliaWxpdHkuCi0rICoKLSsgKiBSSF9LQUJJX0RFUFJFQ0FURV9GTgot KyAqICAgTWFya3MgdGhlIGZ1bmN0aW9uIHBvaW50ZXIgYXMgZGVwcmVjYXRlZCBhbmQgbWFrZSBp dCB1bnVzYWJsZSBieSBtb2R1bGVzCi0rICogICB3aGlsZSBrZWVwaW5nIGEgaG9sZSBpbiBpdHMg cGxhY2UgdG8gcHJlc2VydmUgYmluYXJ5IGNvbXBhdGliaWxpdHkuCi0rICoKLSsgKiBSSF9LQUJJ X0VYVEVORAotKyAqICAgQWRkcyBhIG5ldyBmaWVsZCB0byBhIHN0cnVjdC4gIFRoaXMgbXVzdCBh bHdheXMgYmUgYWRkZWQgdG8gdGhlIGVuZCBvZgotKyAqICAgdGhlIHN0cnVjdC4gIEJlZm9yZSB1 c2luZyB0aGlzIG1hY3JvLCBtYWtlIHN1cmUgdGhpcyBpcyBhY3R1YWxseSBzYWZlCi0rICogICB0 byBkbyAtIHRoZXJlIGlzIGEgbnVtYmVyIG9mIGNvbmRpdGlvbnMgdW5kZXIgd2hpY2ggaXQgaXMg Km5vdCogc2FmZS4KLSsgKiAgIEluIHBhcnRpY3VsYXIgKGJ1dCBub3QgbGltaXRlZCB0byksIHRo aXMgbWFjcm8gY2Fubm90IGJlIHVzZWQ6Ci0rICogICAtIGlmIHRoZSBzdHJ1Y3QgaW4gcXVlc3Rp b24gaXMgZW1iZWRkZWQgaW4gYW5vdGhlciBzdHJ1Y3QsIG9yCi0rICogICAtIGlmIHRoZSBzdHJ1 Y3QgaXMgYWxsb2NhdGVkIGJ5IGRyaXZlcnMgZWl0aGVyIHN0YXRpY2FsbHkgb3IKLSsgKiAgICAg ZHluYW1pY2FsbHksIG9yCi0rICogICAtIGlmIHRoZSBzdHJ1Y3QgaXMgYWxsb2NhdGVkIHRvZ2V0 aGVyIHdpdGggZHJpdmVyIGRhdGEgKGFuIGV4YW1wbGUgb2YKLSsgKiAgICAgc3VjaCBiZWhhdmlv ciBpcyBzdHJ1Y3QgbmV0X2RldmljZSBvciBzdHJ1Y3QgcmVxdWVzdCkuCi0rICoKLSsgKiBSSF9L QUJJX0VYVEVORF9XSVRIX1NJWkUKLSsgKiAgIEFkZHMgYSBuZXcgZWxlbWVudCAodXN1YWxseSBh IHN0cnVjdCkgdG8gYSBzdHJ1Y3QgYW5kIHJlc2VydmVzIGV4dHJhCi0rICogICBzcGFjZSBmb3Ig dGhlIG5ldyBlbGVtZW50LiAgVGhlIHByb3ZpZGVkICdzaXplJyBpcyB0aGUgdG90YWwgc3BhY2Ug dG8KLSsgKiAgIGJlIGFkZGVkIGluIGxvbmdzIChpLmUuIGl0J3MgOCAqICdzaXplJyBieXRlcyks IGluY2x1ZGluZyB0aGUgc2l6ZSBvZgotKyAqICAgdGhlIGFkZGVkIGVsZW1lbnQuICBJdCBpcyBh dXRvbWF0aWNhbGx5IGNoZWNrZWQgdGhhdCB0aGUgbmV3IGVsZW1lbnQKLSsgKiAgIGRvZXMgbm90 IG92ZXJmbG93IHRoZSByZXNlcnZlZCBzcGFjZSwgbm93IG5vciBpbiB0aGUgZnV0dXJlLiBIb3dl dmVyLAotKyAqICAgbm8gYXR0ZW1wdCBpcyBkb25lIHRvIGNoZWNrIHRoZSBjb250ZW50IG9mIHRo ZSBhZGRlZCBlbGVtZW50IChzdHJ1Y3QpCi0rICogICBmb3Iga0FCSSBjb25mb3JtYW5jZSAtIGtB QkkgY2hlY2tpbmcgaW5zaWRlIHRoZSBhZGRlZCBlbGVtZW50IGlzCi0rICogICBlZmZlY3RpdmVs eSBzd2l0Y2hlZCBvZmYuCi0rICogICBGb3IgYW55IHN0cnVjdCBiZWluZyBhZGRlZCBieSBSSF9L QUJJX0VYVEVORF9XSVRIX1NJWkUsIGl0IGlzCi0rICogICByZWNvbW1lbmRlZCBpdHMgY29udGVu dCB0byBiZSBkb2N1bWVudGVkIGFzIG5vdCBjb3ZlcmVkIGJ5IGtBQkkKLSsgKiAgIGd1YXJhbnRl ZS4KLSsgKgotKyAqIFJIX0tBQklfRklMTF9IT0xFCi0rICogICBGaWxscyBhIGhvbGUgaW4gYSBz dHJ1Y3QuCi0rICoKLSsgKiAgIFdhcm5pbmc6IG9ubHkgdXNlIGlmIGEgaG9sZSBleGlzdHMgZm9y IF9hbGxfIGFyY2hlcy4gIFVzZSBwYWhvbGUgdG8gdmVyaWZ5LgotKyAqCi0rICogUkhfS0FCSV9S RU5BTUUKLSsgKiAgIFJlbmFtZXMgYW4gZWxlbWVudCB3aXRob3V0IGNoYW5naW5nIGl0cyB0eXBl LiAgVGhpcyBtYWNybyBjYW4gYmUgdXNlZCBpbgotKyAqICAgYml0ZmllbGRzLCBmb3IgZXhhbXBs ZS4KLSsgKgotKyAqICAgTk9URTogdGhpcyBtYWNybyBkb2VzIG5vdCBhZGQgdGhlIGZpbmFsICc7 JwotKyAqCi0rICogUkhfS0FCSV9SRVBMQUNFCi0rICogICBSZXBsYWNlcyB0aGUgX29yaWcgZmll bGQgYnkgdGhlIF9uZXcgZmllbGQuICBUaGUgc2l6ZSBvZiB0aGUgb2NjdXBpZWQKLSsgKiAgIHNw YWNlIGlzIHByZXNlcnZlZCwgaXQncyBmaW5lIGlmIHRoZSBfbmV3IGZpZWxkIGlzIHNtYWxsZXIg dGhhbiB0aGUKLSsgKiAgIF9vcmlnIGZpZWxkLiAgSWYgYSBfbmV3IGZpZWxkIGlzIGxhcmdlciBv ciBoYXMgYSBkaWZmZXJlbnQgYWxpZ25tZW50LAotKyAqICAgY29tcGlsYXRpb24gd2lsbCBhYm9y dC4KLSsgKgotKyAqIFJIX0tBQklfUkVQTEFDRV9TUExJVAotKyAqICAgV29ya3MgdGhlIHNhbWUg YXMgUkhfS0FCSV9SRVBMQUNFIGJ1dCByZXBsYWNlcyBhIHNpbmdsZSBfb3JpZyBmaWVsZCBieQot KyAqICAgbXVsdGlwbGUgbmV3IGZpZWxkcy4gIFRoZSBjaGVja3MgZm9yIHNpemUgYW5kIGFsaWdu bWVudCBkb25lIGJ5Ci0rICogICBSSF9LQUJJX1JFUExBQ0UgYXJlIHN0aWxsIGFwcGxpZWQuCi0r ICoKLSsgKiBSSF9LQUJJX0hJREVfSU5DTFVERQotKyAqICAgSGlkZXMgdGhlIGdpdmVuIGluY2x1 ZGUgZmlsZSBmcm9tIGtBQkkgY2hlY2tzdW0gY29tcHV0YXRpb25zLiAgVGhpcyBpcwotKyAqICAg dXNlZCB3aGVuIGEgbmV3bHkgYWRkZWQgI2luY2x1ZGUgbWFrZXMgYSBwcmV2aW91c2x5IG9wYXF1 ZSBzdHJ1Y3QKLSsgKiAgIHZpc2libGUuCi0rICoKLSsgKiAgIEV4YW1wbGUgdXNhZ2U6Ci0rICog ICAjaW5jbHVkZSBSSF9LQUJJX0hJREVfSU5DTFVERSg8bGludXgvcG9sbC5oPikKLSsgKgotKyAq IFJIX0tBQklfRkFLRV9JTkNMVURFCi0rICogICBQcmV0ZW5kcyBpbmNsdXNpb24gb2YgdGhlIGdp dmVuIGZpbGUgZm9yIGtBQkkgY2hlY2tzdW0gY29tcHV0YXRpb25zLgotKyAqICAgVGhpcyBpcyB1 c2VkIHdoZW4gdXBzdHJlYW0gcmVtb3ZlZCBhIHBhcnRpY3VsYXIgI2luY2x1ZGUgYnV0IHRoYXQg bWFkZQotKyAqICAgc29tZSBzdHJ1Y3R1cmVzIG9wYXF1ZSB0aGF0IHdlcmUgcHJldmlvdXNseSB2 aXNpYmxlIGFuZCBpcyBjYXVzaW5nIGtBQkkKLSsgKiAgIGNoZWNrZXIgZmFpbHVyZXMuCi0rICoK LSsgKiAgIEV4YW1wbGUgdXNhZ2U6Ci0rICogICAjaW5jbHVkZSBSSF9LQUJJX0ZBS0VfSU5DTFVE RSg8bGludXgvcmhhc2h0YWJsZS5oPikKLSsgKgotKyAqIFJIX0tBQklfUkVTRVJWRQotKyAqICAg QWRkcyBhIHJlc2VydmVkIGZpZWxkIHRvIGEgc3RydWN0LiAgVGhpcyBpcyBkb25lIHByaW9yIHRv IGtBQkkgZnJlZXplCi0rICogICBmb3Igc3RydWN0cyB0aGF0IGNhbm5vdCBiZSBleHBhbmRlZCBs YXRlciB1c2luZyBSSF9LQUJJX0VYVEVORCAoZm9yCi0rICogICBleGFtcGxlIGJlY2F1c2UgdGhl eSBhcmUgZW1iZWRkZWQgaW4gYW5vdGhlciBzdHJ1Y3Qgb3IgYmVjYXVzZSB0aGV5IGFyZQotKyAq ICAgYWxsb2NhdGVkIGJ5IGRyaXZlcnMgb3IgYmVjYXVzZSB0aGV5IHVzZSB1bnVzdWFsIG1lbW9y eSBsYXlvdXQpLiAgVGhlCi0rICogICBzaXplIG9mIHRoZSByZXNlcnZlZCBmaWVsZCBpcyAndW5z aWduZWQgbG9uZycgYW5kIGlzIGFzc3VtZWQgdG8gYmUKLSsgKiAgIDggYnl0ZXMuCi0rICoKLSsg KiAgIFRoZSBhcmd1bWVudCBpcyBhIG51bWJlciB1bmlxdWUgZm9yIHRoZSBnaXZlbiBzdHJ1Y3Q7 IHVzdWFsbHksIG11bHRpcGxlCi0rICogICBSSF9LQUJJX1JFU0VSVkUgbWFjcm9zIGFyZSBhZGRl ZCB0byBhIHN0cnVjdCB3aXRoIG51bWJlcnMgc3RhcnRpbmcgZnJvbQotKyAqICAgb25lLgotKyAq Ci0rICogICBFeGFtcGxlIHVzYWdlOgotKyAqICAgc3RydWN0IGZvbyB7Ci0rICogICAgICAgICAg IGludCBhOwotKyAqICAgICAgICAgICBSSF9LQUJJX1JFU0VSVkUoMSkKLSsgKiAgICAgICAgICAg UkhfS0FCSV9SRVNFUlZFKDIpCi0rICogICAgICAgICAgIFJIX0tBQklfUkVTRVJWRSgzKQotKyAq ICAgICAgICAgICBSSF9LQUJJX1JFU0VSVkUoNCkKLSsgKiAgIH07Ci0rICoKLSsgKiBSSF9LQUJJ X1VTRQotKyAqICAgVXNlcyBhIHByZXZpb3VzbHkgcmVzZXJ2ZWQgZmllbGQgb3IgbXVsdGlwbGUg ZmllbGRzLiAgVGhlIGFyZ3VtZW50cyBhcmUKLSsgKiAgIG9uZSBvciBtb3JlIG51bWJlcnMgYXNz aWduZWQgdG8gUkhfS0FCSV9SRVNFUlZFLCBmb2xsb3dlZCBieSBhIGZpZWxkIHRvCi0rICogICBi ZSBwdXQgaW4gdGhlaXIgcGxhY2UuICBUaGUgY29tcGlsZXIgZW5zdXJlcyB0aGF0IHRoZSBuZXcg ZmllbGQgaXMgbm90Ci0rICogICBsYXJnZXIgdGhhbiB0aGUgcmVzZXJ2ZWQgYXJlYS4KLSsgKgot KyAqICAgRXhhbXBsZSB1c2FnZToKLSsgKiAgIHN0cnVjdCBmb28gewotKyAqICAgICAgICAgICBp bnQgYTsKLSsgKiAgICAgICAgICAgUkhfS0FCSV9VU0UoMSwgaW50IGIpCi0rICogICAgICAgICAg IFJIX0tBQklfVVNFKDIsIDMsIGludCBjWzNdKQotKyAqICAgICAgICAgICBSSF9LQUJJX1JFU0VS VkUoNCkKLSsgKiAgIH07Ci0rICoKLSsgKiBSSF9LQUJJX1VTRV9TUExJVAotKyAqICAgV29ya3Mg dGhlIHNhbWUgYXMgUkhfS0FCSV9VU0UgYnV0IHJlcGxhY2VzIGEgc2luZ2xlIHJlc2VydmVkIGZp ZWxkIGJ5Ci0rICogICBtdWx0aXBsZSBuZXcgZmllbGRzLgotKyAqCi0rICogUkhfS0FCSV9BVVhf RU1CRUQKLSsgKiBSSF9LQUJJX0FVWF9QVFIKLSsgKiAgIEFkZHMgYW4gZXh0ZW5zdGlvbiBvZiBh IHN0cnVjdCBpbiB0aGUgZm9ybSBvZiAiYXV4aWxpYXJ5IHN0cnVjdHVyZSIuCi0rICogICBUaGlz IGlzIGRvbmUgcHJpb3IgdG8ga0FCSSBmcmVlemUgZm9yIHN0cnVjdHMgdGhhdCBjYW5ub3QgYmUg ZXhwYW5kZWQKLSsgKiAgIGxhdGVyIHVzaW5nIFJIX0tBQklfRVhURU5ELiAgU2VlIGFsc28gUkhf S0FCSV9SRVNFUlZFRCwgdGhlc2UgdHdvCi0rICogICBhcHByb2FjaGVzIGNhbiAoYW5kIG9mdGVu IGFyZSkgY29tYmluZWQuCi0rICoKLSsgKiAgIFRvIHVzZSB0aGlzIGZvciAnc3RydWN0IGZvbycg KHRoZSAiYmFzZSBzdHJ1Y3R1cmUiKSwgZGVmaW5lIGEgbmV3Ci0rICogICBzdHJ1Y3R1cmUgY2Fs bGVkICdzdHJ1Y3QgZm9vX3JoJzsgdGhpcyBuZXcgc3RydWN0IGlzIGNhbGxlZCAiYXV4aWxpYXJ5 Ci0rICogICBzdHJ1Y3R1cmUiLiAgVGhlbiBhZGQgUkhfS0FCSV9BVVhfRU1CRUQgb3IgUkhfS0FC SV9BVVhfUFRSIHRvIHRoZSBlbmQKLSsgKiAgIG9mIHRoZSBiYXNlIHN0cnVjdHVyZS4gIFRoZSBh cmd1bWVudCBpcyB0aGUgbmFtZSBvZiB0aGUgYmFzZSBzdHJ1Y3R1cmUsCi0rICogICB3aXRob3V0 IHRoZSAnc3RydWN0JyBrZXl3b3JkLgotKyAqCi0rICogICBSSF9LQUJJX0FVWF9QVFIgc3RvcmVz IGEgcG9pbnRlciB0byB0aGUgYXV4IHN0cnVjdHVyZSBpbiB0aGUgYmFzZQotKyAqICAgc3RydWN0 LiAgVGhlIGxpZmVjeWNsZSBvZiB0aGUgYXV4IHN0cnVjdCBuZWVkcyB0byBiZSBwcm9wZXJseSB0 YWtlbgotKyAqICAgY2FyZSBvZi4KLSsgKgotKyAqICAgUkhfS0FCSV9BVVhfRU1CRUQgZW1iZWRz IHRoZSBhdXggc3RydWN0IGludG8gdGhlIGJhc2Ugc3RydWN0LiAgVGhpcwotKyAqICAgY2Fubm90 IGJlIHVzZWQgd2hlbiB0aGUgYmFzZSBzdHJ1Y3QgaXMgaXRzZWxmIGVtYmVkZGVkIGludG8gYW5v dGhlcgotKyAqICAgc3RydWN0LCBhbGxvY2F0ZWQgaW4gYW4gYXJyYXksIGV0Yy4KLSsgKgotKyAq ICAgQm90aCBhcHByb2FjaGVzIChwdHIgYW5kIGVtYmVkKSB3b3JrIGNvcnJlY3RseSBldmVuIHdo ZW4gdGhlIGF1eCBzdHJ1Y3QKLSsgKiAgIGlzIGFsbG9jYXRlZCBieSBtb2R1bGVzLiAgVG8gZW5z dXJlIHRoaXMsIHRoZSBjb2RlIHJlc3BvbnNpYmxlIGZvcgotKyAqICAgYWxsb2NhdGlvbi9hc3Np Z25tZW50IG9mIHRoZSBhdXggc3RydWN0IGhhcyB0byBwcm9wZXJseSBzZXQgdGhlIHNpemUgb2YK LSsgKiAgIHRoZSBhdXggc3RydWN0OyBzZWUgdGhlIFJIX0tBQklfQVVYX1NFVF9TSVpFIGFuZCBS SF9LQUJJX0FVWF9JTklUX1NJWkUKLSsgKiAgIG1hY3Jvcy4KLSsgKgotKyAqICAgTmV3IGZpZWxk cyBjYW4gYmUgbGF0ZXIgYWRkZWQgdG8gdGhlIGF1eGlsaWFyeSBzdHJ1Y3R1cmUsIGFsd2F5cyB0 byBpdHMKLSsgKiAgIGVuZC4gIE5vdGUgdGhlIGF1eGlsaWFyeSBzdHJ1Y3R1cmUgY2Fubm90IGJl IHNocnVuayBpbiBzaXplIGxhdGVyIChpLmUuLAotKyAqICAgZmllbGRzIGNhbm5vdCBiZSByZW1v dmVkLCBvbmx5IGRlcHJlY2F0ZWQpLiAgQW55IGNvZGUgYWNjZXNzaW5nIGZpZWxkcwotKyAqICAg ZnJvbSB0aGUgYXV4IHN0cnVjdCBtdXN0IGd1YXJkIHRoZSBhY2Nlc3MgdXNpbmcgdGhlIFJIX0tB QklfQVVYIG1hY3JvLgotKyAqICAgVGhlIGFjY2VzcyBpdHNlbGYgaXMgdGhlbiBkb25lIHZpYSBh ICdfcmgnIGZpZWxkIGluIHRoZSBiYXNlIHN0cnVjdC4KLSsgKgotKyAqICAgVGhlIGF1eGlsaWFy eSBzdHJ1Y3R1cmUgaXMgbm90IGd1YXJhbnRlZWQgZm9yIGFjY2VzcyBieSBtb2R1bGVzIHVubGVz cwotKyAqICAgZXhwbGljaXRseSBjb21tZW50ZWQgYXMgc3VjaCBpbiB0aGUgZGVjbGFyYXRpb24g b2YgdGhlIGF1eCBzdHJ1Y3QKLSsgKiAgIGl0c2VsZiBvciBzb21lIG9mIGl0cyBlbGVtZW50cy4K LSsgKgotKyAqICAgRXhhbXBsZToKLSsgKgotKyAqICAgc3RydWN0IGZvb19yaCB7Ci0rICogICAg ICAgICAgIGludCBuZXdseV9hZGRlZDsKLSsgKiAgIH07Ci0rICoKLSsgKiAgIHN0cnVjdCBmb28g ewotKyAqICAgICAgICAgICBib29sIGJpZ19oYW1tZXI7Ci0rICogICAgICAgICAgIFJIX0tBQklf QVVYX1BUUihmb28pCi0rICogICB9OwotKyAqCi0rICogICB2b2lkIHVzZShzdHJ1Y3QgZm9vICpm KQotKyAqICAgewotKyAqICAgICAgICAgICBpZiAoUkhfS0FCSV9BVVgoZiwgZm9vLCBuZXdseV9h ZGRlZCkpCi0rICogICAgICAgICAgICAgICAgICAgZi0+X3JoLT5uZXdseV9hZGRlZCA9IDEyMzsK LSsgKgkgICAgIGVsc2UKLSsgKgkgICAgICAgICAgICAgLy8gdGhlIGZpZWxkICduZXdseV9hZGRl ZCcgaXMgbm90IHByZXNlbnQgaW4gdGhlIHBhc3NlZAotKyAqCSAgICAgICAgICAgICAvLyBzdHJ1 Y3QsIGZhbGwgYmFjayB0byBvbGQgYmVoYXZpb3IKLSsgKgkgICAgICAgICAgICAgZi0+YmlnX2hh bW1lciA9IHRydWU7Ci0rICogICB9Ci0rICoKLSsgKiAgIHN0YXRpYyBzdHJ1Y3QgZm9vX3JoIG15 X2Zvb19yaCB7Ci0rICogICAgICAgICAgIC5uZXdseV9hZGRlZCA9IDA7Ci0rICogICB9Ci0rICoK LSsgKiAgIHN0YXRpYyBzdHJ1Y3QgZm9vIG15X2ZvbyA9IHsKLSsgKiAgICAgICAgICAgLmJpZ19o YW1tZXIgPSBmYWxzZSwKLSsgKiAgICAgICAgICAgLl9yaCA9ICZteV9mb29fcmgsCi0rICogICAg ICAgICAgIFJIX0tBQklfQVVYX0lOSVRfU0laRShmb28pCi0rICogICB9OwotKyAqCi0rICogUkhf S0FCSV9VU0VfQVVYX1BUUgotKyAqICAgQ3JlYXRlcyBhbiBhdXhpbGlhcnkgc3RydWN0dXJlIHBv c3Qga0FCSSBmcmVlemUuICBUaGlzIHdvcmtzIGJ5IHVzaW5nCi0rICogICB0d28gcmVzZXJ2ZWQg ZmllbGRzICh0aHVzIHRoZXJlIGhhcyB0byBiZSB0d28gcmVzZXJ2ZWQgZmllbGRzIHN0aWxsCi0r ICogICBhdmFpbGFibGUpIGFuZCBjb252ZXJ0aW5nIHRoZW0gdG8gUkhfS0FCSV9BVVhfUFRSLgot KyAqCi0rICogICBFeGFtcGxlOgotKyAqCi0rICogICBzdHJ1Y3QgZm9vX3JoIHsKLSsgKiAgIH07 Ci0rICoKLSsgKiAgIHN0cnVjdCBmb28gewotKyAqICAgICAgICAgICBpbnQgYTsKLSsgKiAgICAg ICAgICAgUkhfS0FCSV9SRVNFUlZFKDEpCi0rICogICAgICAgICAgIFJIX0tBQklfVVNFX0FVWF9Q VFIoMiwgMywgZm9vKQotKyAqICAgfTsKLSsgKgotKyAqIFJIX0tBQklfQVVYX1NFVF9TSVpFCi0r ICogUkhfS0FCSV9BVVhfSU5JVF9TSVpFCi0rICogICBDYWxjdWxhdGVzIGFuZCBzdG9yZXMgdGhl IHNpemUgb2YgdGhlIGF1eGlsaWFyeSBzdHJ1Y3R1cmUuCi0rICoKLSsgKiAgIFJIX0tBQklfQVVY X1NFVF9TSVpFIGlzIGZvciBkeW5hbWljYWxseSBhbGxvY2F0ZWQgYmFzZSBzdHJ1Y3RzLAotKyAq ICAgUkhfS0FCSV9BVVhfSU5JVF9TSVpFIGlzIGZvciBzdGF0aWNhbGx5IGFsbG9jYXRlZCBjYXNl IHN0cnVjdHMuCi0rICoKLSsgKiAgIFRoZXNlIG1hY3JvcyBtdXN0IGJlIGNhbGxlZCBmcm9tIHRo ZSBhbGxvY2F0aW9uIChSSF9LQUJJX0FVWF9TRVRfU0laRSkKLSsgKiAgIG9yIGRlY2xhcmF0aW9u IChSSF9LQUJJX0FVWF9JTklUX1NJWkUpIHNpdGUsIHJlZ2FyZGxlc3Mgb2Ygd2hldGhlcgotKyAq ICAgdGhhdCBoYXBwZW5zIGluIHRoZSBrZXJuZWwgb3IgaW4gYSBtb2R1bGUuICBXaXRob3V0IGNh bGxpbmcgb25lIG9mCi0rICogICB0aGVzZSBtYWNyb3MsIHRoZSBhdXggc3RydWN0IHdpbGwgYXBw ZWFyIHRvIGhhdmUgbm8gZmllbGRzIHRvIHRoZQotKyAqICAga2VybmVsLgotKyAqCi0rICogICBO b3RlOiBzaW5jZSBSSF9LQUJJX0FVWF9TRVRfU0laRSBpcyBpbnRlbmRlZCB0byBiZSBpbnZva2Vk IG91dHNpZGUgb2YKLSsgKiAgIGEgc3RydWN0IGRlZmluaXRpb24sIGl0IGRvZXMgbm90IGFkZCB0 aGUgc2VtaWNvbG9uIGFuZCBtdXN0IGJlCi0rICogICB0ZXJtaW5hdGVkIGJ5IHNlbWljb2xvbiBi eSB0aGUgY2FsbGVyLgotKyAqCi0rICogUkhfS0FCSV9BVVgKLSsgKiAgIFZlcmlmaWVzIHRoYXQg dGhlIGdpdmVuIGZpZWxkIGV4aXN0cyBpbiB0aGUgZ2l2ZW4gYXV4aWxpYXJ5IHN0cnVjdHVyZS4K LSsgKiAgIFRoaXMgTVVTVCBiZSBjYWxsZWQgcHJpb3IgdG8gYWNjZXNzaW5nIHRoYXQgZmllbGQ7 IGZhaWxpbmcgdG8gZG8gdGhhdAotKyAqICAgbWF5IGxlYWQgdG8gaW52YWxpZCBtZW1vcnkgYWNj ZXNzLgotKyAqCi0rICogICBUaGUgZmlyc3QgYXJndW1lbnQgaXMgYSBwb2ludGVyIHRvIHRoZSBi YXNlIHN0cnVjdCwgdGhlIHNlY29uZCBhcmd1bWVudAotKyAqICAgaXMgdGhlIG5hbWUgb2YgdGhl IGJhc2Ugc3RydWN0ICh3aXRob3V0IHRoZSAnc3RydWN0JyBrZXl3b3JkKSwgdGhlCi0rICogICB0 aGlyZCBhcmd1bWVudCBpcyB0aGUgZmllbGQgbmFtZS4KLSsgKgotKyAqICAgVGhpcyBtYWNybyB3 b3JrcyBmb3Igc3RydWN0cyBleHRlbmRlZCBieSBlaXRoZXIgb2YgUkhfS0FCSV9BVVhfRU1CRUQs Ci0rICogICBSSF9LQUJJX0FVWF9QVFIgYW5kIFJIX0tBQklfVVNFX0FVWF9QVFIuCi0rICoKLSsg KiBSSF9LQUJJX0ZPUkNFX0NIQU5HRQotKyAqICAgRm9yY2UgY2hhbmdlIG9mIHRoZSBzeW1ib2wg Y2hlY2tzdW0uICBUaGUgYXJndW1lbnQgb2YgdGhlIG1hY3JvIGlzIGEKLSsgKiAgIHZlcnNpb24g Zm9yIGNhc2VzIHdlIG5lZWQgdG8gZG8gdGhpcyBtb3JlIHRoYW4gb25jZS4KLSsgKgotKyAqICAg VGhpcyBtYWNybyBkb2VzIHRoZSBvcHBvc2l0ZTogaXQgY2hhbmdlcyB0aGUgc3ltYm9sIGNoZWNr c3VtIHdpdGhvdXQKLSsgKiAgIGFjdHVhbGx5IGNoYW5naW5nIGFueXRoaW5nIGFib3V0IHRoZSBl eHBvcnRlZCBzeW1ib2wuICBJdCBpcyB1c2VmdWwgZm9yCi0rICogICBzeW1ib2xzIHRoYXQgYXJl IG5vdCB3aGl0ZWxpc3RlZCwgd2UncmUgY2hhbmdpbmcgdGhlbSBpbiBhbgotKyAqICAgaW5jb21w YXRpYmxlIHdheSBhbmQgd2FudCB0byBwcmV2ZW50IDNyZCBwYXJ0eSBtb2R1bGVzIHRvIHNpbGVu dGx5Ci0rICogICBjb3JydXB0IG1lbW9yeS4gIEluc3RlYWQsIGJ5IGNoYW5naW5nIHRoZSBzeW1i b2wgY2hlY2tzdW0sIHN1Y2ggbW9kdWxlcwotKyAqICAgd29uJ3QgYmUgbG9hZGVkIGJ5IHRoZSBr ZXJuZWwuICBUaGlzIG1hY3JvIHNob3VsZCBvbmx5IGJlIHVzZWQgYXMgYQotKyAqICAgbGFzdCBy ZXNvcnQgd2hlbiBhbGwgb3RoZXIgS0FCSSB3b3JrYXJvdW5kcyBoYXZlIGZhaWxlZC4KLSsgKgot KyAqIFJIX0tBQklfRVhDTFVERQotKyAqICAgISEhIFdBUk5JTkc6IERBTkdFUk9VUywgRE8gTk9U IFVTRSB1bmxlc3MgeW91IGFyZSBhd2FyZSBvZiBhbGwgdGhlICEhIQotKyAqICAgISEhIGltcGxp Y2F0aW9ucy4gVGhpcyBzaG91bGQgYmUgdXNlZCBPTkxZIEVYQ0VQVElPTkFMTFkgYW5kIG9ubHkg ICEhIQotKyAqICAgISEhIHVuZGVyIHNwZWNpZmljIGNpcmN1bXN0YW5jZXMuIFZlcnkgbGlrZWx5 LCB0aGlzIG1hY3JvIGRvZXMgbm90ICEhIQotKyAqICAgISEhIGRvIHdoYXQgeW91IGV4cGVjdCBp dCB0byBkby4gTm90ZSB0aGF0IGFueSB1c2FnZSBvZiB0aGlzIG1hY3JvICEhIQotKyAqICAgISEh IE1VU1QgYmUgcGFpcmVkIHdpdGggYSBSSF9LQUJJX0ZPUkNFX0NIQU5HRSBhbm5vdGF0aW9uIG9m ICAgICAgICEhIQotKyAqICAgISEhIGEgc3VpdGFibGUgc3ltYm9sIChvciBhbiBlcXVpdmFsZW50 IHNhZmVndWFyZCkgYW5kIHRoZSBjb21taXQgICEhIQotKyAqICAgISEhIGxvZyBNVVNUIGV4cGxh aW4gd2h5IHRoZSBjaG9zZW4gc29sdXRpb24gaXMgYXBwcm9wcmlhdGUuICAgICAgICEhIQotKyAq Ci0rICogICBFeGNsdWRlIHRoZSBlbGVtZW50IGZyb20gY2hlY2tzdW0gZ2VuZXJhdGlvbi4gIEFu eSBzdWNoIGVsZW1lbnQgaXMKLSsgKiAgIGNvbnNpZGVyZWQgbm90IHRvIGJlIHBhcnQgb2YgdGhl IGtBQkkgd2hpdGVsaXN0IGFuZCBtYXkgYmUgY2hhbmdlZCBhdAotKyAqICAgd2lsbC4gIE5vdGUg aG93ZXZlciB0aGF0IGl0J3MgdGhlIHJlc3BvbnNpYmlsaXR5IG9mIHRoZSBkZXZlbG9wZXIKLSsg KiAgIGNoYW5naW5nIHRoZSBlbGVtZW50IHRvIGVuc3VyZSAzcmQgcGFydHkgZHJpdmVycyB1c2lu ZyB0aGlzIGVsZW1lbnQKLSsgKiAgIHdvbid0IHBhbmljLCBmb3IgZXhhbXBsZSBieSBub3QgYWxs b3dpbmcgdGhlbSB0byBiZSBsb2FkZWQuICBUaGF0IGNhbgotKyAqICAgYmUgYWNoaWV2ZWQgYnkg Y2hhbmdpbmcgYW5vdGhlciwgbm9uLXdoaXRlbGlzdGVkIHN5bWJvbCB0aGV5IHVzZSwKLSsgKiAg IGVpdGhlciBieSBuYXR1cmUgb2YgdGhlIGNoYW5nZSBvciBieSB1c2luZyBSSF9LQUJJX0ZPUkNF X0NIQU5HRS4KLSsgKgotKyAqICAgQWxzbyBub3RlIHRoYXQgYW55IGNoYW5nZSB0byB0aGUgZWxl bWVudCBtdXN0IHByZXNlcnZlIGl0cyBzaXplLiBDaGFuZ2UKLSsgKiAgIG9mIHRoZSBzaXplIGlz IG5vdCBhbGxvd2VkIGFuZCB3b3VsZCBjb25zdGl0dXRlIGEgc2lsZW50IGtBQkkgYnJlYWthZ2Uu Ci0rICogICBCZXdhcmUgdGhhdCB0aGUgUkhfS0FCSV9FWENMVURFIG1hY3JvIGRvZXMgbm90IGRv IGFueSBzaXplIGNoZWNrcy4KLSsgKgotKyAqIFJIX0tBQklfRVhDTFVERV9XSVRIX1NJWkUKLSsg KiAgIExpa2UgUkhfS0FCSV9FWENMVURFLCB0aGlzIG1hY3JvIGV4Y2x1ZGVzIHRoZSBlbGVtZW50 IGZyb20KLSsgKiAgIGNoZWNrc3VtIGdlbmVyYXRpb24uICBUaGUgc2FtZSB3YXJuaW5ncyBhcyBm b3IgUkhfS0FCSV9FWENMVURFCi0rICogICBhcHBseTogdXNlIFJIX0tBQklfRk9SQ0VfQ0hBTkdF LgotKyAqCi0rICogICBUaGlzIG1hY3JvIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgZm9yIGVsZW1l bnRzIGVtYmVkZGVkIGluc2lkZQotKyAqICAga0FCSS1wcm90ZWN0ZWQgc3RydWN0dXJlcyAoc3Ry dWN0LCBhcnJheSkuIEluIGNvbnRyYXN0IHdpdGgKLSsgKiAgIFJIX0tBQklfRVhDTFVERSwgdGhp cyBtYWNybyByZXNlcnZlcyBleHRyYSBzcGFjZSwgc28gdGhhdCB0aGUKLSsgKiAgIGVtYmVkZGVk IGVsZW1lbnQgY2FuIGdyb3cgd2l0aG91dCBjaGFuZ2luZyB0aGUgb2Zmc2V0cyBvZiB0aGUKLSsg KiAgIGZpZWxkcyB0aGF0IGZvbGxvdy4gVGhlIHByb3ZpZGVkICdzaXplJyBpcyB0aGUgdG90YWwg c3BhY2UgdG8gYmUKLSsgKiAgIGFkZGVkIGluIGxvbmdzIChpLmUuIGl0J3MgOCAqICdzaXplJyBi eXRlcyksIGluY2x1ZGluZyB0aGUgc2l6ZQotKyAqICAgb2YgdGhlIGFkZGVkIGVsZW1lbnQuICBJ dCBpcyBhdXRvbWF0aWNhbGx5IGNoZWNrZWQgdGhhdCB0aGUgbmV3Ci0rICogICBlbGVtZW50IGRv ZXMgbm90IG92ZXJmbG93IHRoZSByZXNlcnZlZCBzcGFjZSwgbm93IG5vciBpbiB0aGUKLSsgKiAg IGZ1dHVyZS4gVGhlIHNpemUgaXMgYWxzbyBpbmNsdWRlZCBpbiB0aGUgY2hlY2tzdW0gdmlhIHRo ZQotKyAqICAgcmVzZXJ2ZWQgc3BhY2UsIHRvIGVuc3VyZSB0aGF0IHdlIGRvbid0IGFjY2lkZW50 YWxseSBjaGFuZ2UgaXQsCi0rICogICB3aGljaCB3b3VsZCBjaGFuZ2UgdGhlIG9mZnNldHMgb2Yg dGhlIGZpZWxkcyB0aGF0IGZvbGxvdy4KLSsgKgotKyAqIFJIX0tBQklfQlJPS0VOX0lOU0VSVAot KyAqIFJIX0tBQklfQlJPS0VOX1JFTU9WRQotKyAqICAgSW5zZXJ0IGEgZmllbGQgdG8gdGhlIG1p ZGRsZSBvZiBhIHN0cnVjdCAvIGRlbGV0ZSBhIGZpZWxkIGZyb20gYSBzdHJ1Y3QuCi0rICogICBO b3RlIHRoYXQgdGhpcyBicmVha3Mga0FCSSEgSXQgY2FuIGJlIGRvbmUgb25seSB3aGVuIGl0J3Mg Y2VydGFpbiB0aGF0Ci0rICogICBubyAzcmQgcGFydHkgZHJpdmVyIGNhbiB2YWxpZGx5IHJlYWNo IGludG8gdGhlIHN0cnVjdC4gIEEgdHlwaWNhbAotKyAqICAgZXhhbXBsZSBpcyBhIHN0cnVjdCB0 aGF0IGlzOiAgYm90aCAoYSkgcmVmZXJlbmNlZCBvbmx5IHRocm91Z2ggYSBsb25nCi0rICogICBj aGFpbiBvZiBwb2ludGVycyBmcm9tIGFub3RoZXIgc3RydWN0IHRoYXQgaXMgcGFydCBvZiBhIHdo aXRlbGlzdGVkCi0rICogICBzeW1ib2wgYW5kIChiKSBrZXJuZWwgaW50ZXJuYWwgb25seSwgaXQg c2hvdWxkIGhhdmUgbmV2ZXIgYmVlbiB2aXNpYmxlCi0rICogICB0byBnZW5rc3ltcyBpbiB0aGUg Zmlyc3QgcGxhY2UuCi0rICoKLSsgKiAgIEFub3RoZXIgZXhhbXBsZSBhcmUgc3RydWN0cyB0aGF0 IGFyZSBleHBsaWNpdGx5IGV4ZW1wdCBmcm9tIGtBQkkKLSsgKiAgIGd1YXJhbnRlZSBidXQgd2Ug ZGlkIG5vdCBoYXZlIGVub3VnaCBmb3Jlc2lnaHQgdG8gdXNlIFJIX0tBQklfRVhDTFVERS4KLSsg KiAgIEluIHRoaXMgY2FzZSwgdGhlIHdhcm5pbmcgZm9yIFJIX0tBQklfRVhDTFVERSBhcHBsaWVz LgotKyAqCi0rICogICBBIGRldGFpbGVkIGV4cGxhbmF0aW9uIG9mIGNvcnJlY3RuZXNzIG9mIGV2 ZXJ5IFJIX0tBQklfQlJPS0VOXyogbWFjcm8KLSsgKiAgIHVzZSBpcyBlc3BlY2lhbGx5IGltcG9y dGFudC4KLSsgKgotKyAqIFJIX0tBQklfQlJPS0VOX0lOU0VSVF9CTE9DSwotKyAqIFJIX0tBQklf QlJPS0VOX1JFTU9WRV9CTE9DSwotKyAqICAgQSB2ZXJzaW9uIG9mIFJIX0tBQklfQlJPS0VOX0lO U0VSVCAvIFJFTU9WRSB0aGF0IGFsbG93cyBtdWx0aXBsZSBmaWVsZHMKLSsgKiAgIHRvIGJlIGlu c2VydGVkIG9yIHJlbW92ZWQgdG9nZXRoZXIuICBBbGwgZmllbGRzIG5lZWQgdG8gYmUgdGVybWlu YXRlZAotKyAqICAgYnkgJzsnIGluc2lkZSghKSB0aGUgbWFjcm8gcGFyYW1ldGVyLiAgVGhlIG1h Y3JvIGl0c2VsZiBtdXN0IG5vdCBiZQotKyAqICAgdGVybWluYXRlZCBieSAnOycuCi0rICoKLSsg KiBSSF9LQUJJX0JST0tFTl9SRVBMQUNFCi0rICogICBSZXBsYWNlIGEgZmllbGQgYnkgYSBkaWZm ZXJlbnQgb25lIHdpdGhvdXQgZG9pbmcgYW55IGNoZWNraW5nLiAgVGhpcwotKyAqICAgYWxsb3dz IHJlcGxhY2luZyBhIGZpZWxkIGJ5IGFub3RoZXIgd2l0aCBhIGRpZmZlcmVudCBzaXplLiAgU2lt aWxhcmx5Ci0rICogICB0byBvdGhlciBSSF9LQUJJX0JST0tFTiBtYWNyb3MsIHVzZSBvZiB0aGlz IGluZGljYXRlcyBhIGtBQkkgYnJlYWthZ2UuCi0rICoKLSsgKiBSSF9LQUJJX0JST0tFTl9JTlNF UlRfRU5VTQotKyAqIFJIX0tBQklfQlJPS0VOX1JFTU9WRV9FTlVNCi0rICogICBJbnNlcnQgYSBm aWVsZCB0byB0aGUgbWlkZGxlIG9mIGFuIGVudW1hcmF0aW9uIHR5cGUgLyBkZWxldGUgYSBmaWVs ZCBmcm9tCi0rICogICBhbiBlbnVtYXJhdGlvbiB0eXBlLiBOb3RlIHRoYXQgdGhpcyBjYW4gYnJl YWsga0FCSSBlc3BlY2lhbGx5IGlmIHRoZQotKyAqICAgbnVtYmVyIG9mIGVudW0gZmllbGRzIGlz IHVzZWQgaW4gYW4gYXJyYXkgd2l0aGluIGEgc3RydWN0dXJlLiBJdCBjYW4gYmUKLSsgKiAgIGRv bmUgb25seSB3aGVuIGl0IGlzIGNlcnRhaW4gdGhhdCBubyAzcmQgcGFydHkgZHJpdmVyIHdpbGwg dXNlIHRoZQotKyAqICAgZW51bWVyYXRpb24gdHlwZSBvciBhIHN0cnVjdHVyZSB0aGF0IGVtYmVk cyBhbiBhcnJheSB3aXRoIHNpemUgZGV0ZXJtaW5lZAotKyAqICAgYnkgYW4gZW51bWVyYXRpb24g dHlwZS4KLSsgKgotKyAqIFJIX0tBQklfRVhURU5EX0VOVU0KLSsgKiAgIEFkZHMgYSBuZXcgZmll bGQgdG8gYW4gZW51bWVyYXRpb24gdHlwZS4gIFRoaXMgbXVzdCBhbHdheXMgYmUgYWRkZWQgdG8K LSsgKiAgIHRoZSBlbmQgb2YgdGhlIGVudW0uICBCZWZvcmUgdXNpbmcgdGhpcyBtYWNybywgbWFr ZSBzdXJlIHRoaXMgaXMgYWN0dWFsbHkKLSsgKiAgIHNhZmUgdG8gZG8uCi0rICovCi0rCi0rI3Vu ZGVmIGxpbnV4Ci0rI2RlZmluZSBsaW51eCBsaW51eAotKwotKyNpZmRlZiBfX0dFTktTWU1TX18K LSsKLSsjIGRlZmluZSBSSF9LQUJJX0NPTlNUCi0rIyBkZWZpbmUgUkhfS0FCSV9BRERfTU9ESUZJ RVIoX25ldykKLSsjIGRlZmluZSBSSF9LQUJJX0VYVEVORChfbmV3KQotKyMgZGVmaW5lIFJIX0tB QklfRklMTF9IT0xFKF9uZXcpCi0rIyBkZWZpbmUgUkhfS0FCSV9GT1JDRV9DSEFOR0UodmVyKQkJ X19hdHRyaWJ1dGVfXygocmhfa2FiaV9jaGFuZ2UgIyMgdmVyKSkKLSsjIGRlZmluZSBSSF9LQUJJ X1JFTkFNRShfb3JpZywgX25ldykJCV9vcmlnCi0rIyBkZWZpbmUgUkhfS0FCSV9ISURFX0lOQ0xV REUoX2ZpbGUpCQk8bGludXgvcmhfa2FiaS5oPgotKyMgZGVmaW5lIFJIX0tBQklfRkFLRV9JTkNM VURFKF9maWxlKQkJX2ZpbGUKLSsjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9JTlNFUlQoX25ldykK LSsjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9SRU1PVkUoX29yaWcpCQlfb3JpZzsKLSsjIGRlZmlu ZSBSSF9LQUJJX0JST0tFTl9JTlNFUlRfQkxPQ0soX25ldykKLSsjIGRlZmluZSBSSF9LQUJJX0JS T0tFTl9SRU1PVkVfQkxPQ0soX29yaWcpCV9vcmlnCi0rIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5f UkVQTEFDRShfb3JpZywgX25ldykJX29yaWc7Ci0rIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fSU5T RVJUX0VOVU0oX25ldykKLSsjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9SRU1PVkVfRU5VTShfb3Jp ZykJX29yaWcsCi0rIyBkZWZpbmUgUkhfS0FCSV9FWFRFTkRfRU5VTShfbmV3KQotKwotKyMgZGVm aW5lIF9SSF9LQUJJX0RFUFJFQ0FURShfdHlwZSwgX29yaWcpCV90eXBlIF9vcmlnCi0rIyBkZWZp bmUgX1JIX0tBQklfREVQUkVDQVRFX0ZOKF90eXBlLCBfb3JpZywgX2FyZ3MuLi4pCV90eXBlICgq X29yaWcpKF9hcmdzKQotKyMgZGVmaW5lIF9SSF9LQUJJX1JFUExBQ0UoX29yaWcsIF9uZXcpCQlf b3JpZwotKyMgZGVmaW5lIF9SSF9LQUJJX0VYQ0xVREUoX2VsZW0pCi0rCi0rIyBkZWZpbmUgX19S SF9LQUJJX0NIRUNLX1NJWkUoX2l0ZW0sIF9zaXplKQotKwotKyNlbHNlCi0rCi0rIyBkZWZpbmUg UkhfS0FCSV9BTElHTl9XQVJOSU5HICIuICBEaXNhYmxlIENPTkZJR19SSF9LQUJJX1NJWkVfQUxJ R05fQ0hFQ0tTIGlmIGRlYnVnZ2luZy4iCi0rCi0rIyBkZWZpbmUgUkhfS0FCSV9DT05TVAkJCQlj b25zdAotKyMgZGVmaW5lIFJIX0tBQklfQUREX01PRElGSUVSKF9uZXcpCQlfbmV3Ci0rIyBkZWZp bmUgUkhfS0FCSV9FWFRFTkQoX25ldykJCQlfbmV3OwotKyMgZGVmaW5lIFJIX0tBQklfRklMTF9I T0xFKF9uZXcpCQlfbmV3OwotKyMgZGVmaW5lIFJIX0tBQklfRk9SQ0VfQ0hBTkdFKHZlcikKLSsj IGRlZmluZSBSSF9LQUJJX1JFTkFNRShfb3JpZywgX25ldykJCV9uZXcKLSsjIGRlZmluZSBSSF9L QUJJX0hJREVfSU5DTFVERShfZmlsZSkJCV9maWxlCi0rIyBkZWZpbmUgUkhfS0FCSV9GQUtFX0lO Q0xVREUoX2ZpbGUpCQk8bGludXgvcmhfa2FiaS5oPgotKyMgZGVmaW5lIFJIX0tBQklfQlJPS0VO X0lOU0VSVChfbmV3KQkJX25ldzsKLSsjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9SRU1PVkUoX29y aWcpCi0rIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fSU5TRVJUX0JMT0NLKF9uZXcpCV9uZXcKLSsj IGRlZmluZSBSSF9LQUJJX0JST0tFTl9SRU1PVkVfQkxPQ0soX29yaWcpCi0rIyBkZWZpbmUgUkhf S0FCSV9CUk9LRU5fUkVQTEFDRShfb3JpZywgX25ldykJX25ldzsKLSsjIGRlZmluZSBSSF9LQUJJ X0JST0tFTl9JTlNFUlRfRU5VTShfbmV3KQlfbmV3LAotKyMgZGVmaW5lIFJIX0tBQklfQlJPS0VO X1JFTU9WRV9FTlVNKF9vcmlnKQotKyMgZGVmaW5lIFJIX0tBQklfRVhURU5EX0VOVU0oX25ldykJ CV9uZXcsCi0rCi0rI2lmIElTX0JVSUxUSU4oQ09ORklHX1JIX0tBQklfU0laRV9BTElHTl9DSEVD S1MpCi0rIyBkZWZpbmUgX19SSF9LQUJJX0NIRUNLX1NJWkVfQUxJR04oX29yaWcsIF9uZXcpCQkJ XAotKwl1bmlvbiB7CQkJCQkJCQlcCi0rCQlfU3RhdGljX2Fzc2VydChzaXplb2Yoc3RydWN0e19u ZXc7fSkgPD0gc2l6ZW9mKHN0cnVjdHtfb3JpZzt9KSwgXAotKwkJCSAgICAgICBfX0ZJTEVfXyAi OiIgX19zdHJpbmdpZnkoX19MSU5FX18pICI6ICIgIF9fc3RyaW5naWZ5KF9uZXcpICIgaXMgbGFy Z2VyIHRoYW4gIiBfX3N0cmluZ2lmeShfb3JpZykgUkhfS0FCSV9BTElHTl9XQVJOSU5HKTsgXAot KwkJX1N0YXRpY19hc3NlcnQoX19hbGlnbm9mX18oc3RydWN0e19uZXc7fSkgPD0gX19hbGlnbm9m X18oc3RydWN0e19vcmlnO30pLCBcCi0rCQkJICAgICAgIF9fRklMRV9fICI6IiBfX3N0cmluZ2lm eShfX0xJTkVfXykgIjogIiAgX19zdHJpbmdpZnkoX29yaWcpICIgaXMgbm90IGFsaWduZWQgdGhl IHNhbWUgYXMgIiBfX3N0cmluZ2lmeShfbmV3KSBSSF9LQUJJX0FMSUdOX1dBUk5JTkcpOyBcCi0r CX0KLSsjIGRlZmluZSBfX1JIX0tBQklfQ0hFQ0tfU0laRShfaXRlbSwgX3NpemUpCQkJCVwKLSsJ X1N0YXRpY19hc3NlcnQoc2l6ZW9mKHN0cnVjdHtfaXRlbTt9KSA8PSBfc2l6ZSwJCQlcCi0rCQkg ICAgICAgX19GSUxFX18gIjoiIF9fc3RyaW5naWZ5KF9fTElORV9fKSAiOiAiIF9fc3RyaW5naWZ5 KF9pdGVtKSAiIGlzIGxhcmdlciB0aGFuIHRoZSByZXNlcnZlZCBzaXplICgiIF9fc3RyaW5naWZ5 KF9zaXplKSAiIGJ5dGVzKSIgUkhfS0FCSV9BTElHTl9XQVJOSU5HKTsKLSsjZWxzZQotKyMgZGVm aW5lIF9fUkhfS0FCSV9DSEVDS19TSVpFX0FMSUdOKF9vcmlnLCBfbmV3KQotKyMgZGVmaW5lIF9f UkhfS0FCSV9DSEVDS19TSVpFKF9pdGVtLCBfc2l6ZSkKLSsjZW5kaWYKLSsKLSsjZGVmaW5lIFJI X0tBQklfVU5JUVVFX0lECV9fUEFTVEUocmhfa2FiaV9oaWRkZW5fLCBfX0xJTkVfXykKLSsKLSsj IGRlZmluZSBfUkhfS0FCSV9ERVBSRUNBVEUoX3R5cGUsIF9vcmlnKQlfdHlwZSByaF9yZXNlcnZl ZF8jI19vcmlnCi0rIyBkZWZpbmUgX1JIX0tBQklfREVQUkVDQVRFX0ZOKF90eXBlLCBfb3JpZywg X2FyZ3MuLi4pICBcCi0rCV90eXBlICgqIHJoX3Jlc2VydmVkXyMjX29yaWcpKF9hcmdzKQotKyMg ZGVmaW5lIF9SSF9LQUJJX1JFUExBQ0UoX29yaWcsIF9uZXcpCQkJICBcCi0rCXVuaW9uIHsJCQkJ CQkgIFwKLSsJCV9uZXc7CQkJCQkgIFwKLSsJCXN0cnVjdCB7CQkJCSAgXAotKwkJCV9vcmlnOwkJ CQkgIFwKLSsJCX0gUkhfS0FCSV9VTklRVUVfSUQ7CQkJICBcCi0rCQlfX1JIX0tBQklfQ0hFQ0tf U0laRV9BTElHTihfb3JpZywgX25ldyk7ICBcCi0rCX0KLSsKLSsjIGRlZmluZSBfUkhfS0FCSV9F WENMVURFKF9lbGVtKQkJX2VsZW0KLSsKLSsjZW5kaWYgLyogX19HRU5LU1lNU19fICovCi0rCi0r IyBkZWZpbmUgUkhfS0FCSV9ERVBSRUNBVEUoX3R5cGUsIF9vcmlnKQlfUkhfS0FCSV9ERVBSRUNB VEUoX3R5cGUsIF9vcmlnKTsKLSsjIGRlZmluZSBSSF9LQUJJX0RFUFJFQ0FURV9GTihfdHlwZSwg X29yaWcsIF9hcmdzLi4uKSAgXAotKwlfUkhfS0FCSV9ERVBSRUNBVEVfRk4oX3R5cGUsIF9vcmln LCBfYXJncyk7Ci0rIyBkZWZpbmUgUkhfS0FCSV9SRVBMQUNFKF9vcmlnLCBfbmV3KQkJX1JIX0tB QklfUkVQTEFDRShfb3JpZywgX25ldyk7Ci0rCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBMQUNFMShf bmV3KQkJX25ldzsKLSsjZGVmaW5lIF9SSF9LQUJJX1JFUExBQ0UyKF9uZXcsIC4uLikJX25ldzsg X1JIX0tBQklfUkVQTEFDRTEoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBMQUNF MyhfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExBQ0UyKF9fVkFfQVJHU19fKQotKyNkZWZp bmUgX1JIX0tBQklfUkVQTEFDRTQoX25ldywgLi4uKQlfbmV3OyBfUkhfS0FCSV9SRVBMQUNFMyhf X1ZBX0FSR1NfXykKLSsjZGVmaW5lIF9SSF9LQUJJX1JFUExBQ0U1KF9uZXcsIC4uLikJX25ldzsg X1JIX0tBQklfUkVQTEFDRTQoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBMQUNF NihfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExBQ0U1KF9fVkFfQVJHU19fKQotKyNkZWZp bmUgX1JIX0tBQklfUkVQTEFDRTcoX25ldywgLi4uKQlfbmV3OyBfUkhfS0FCSV9SRVBMQUNFNihf X1ZBX0FSR1NfXykKLSsjZGVmaW5lIF9SSF9LQUJJX1JFUExBQ0U4KF9uZXcsIC4uLikJX25ldzsg X1JIX0tBQklfUkVQTEFDRTcoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBMQUNF OShfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExBQ0U4KF9fVkFfQVJHU19fKQotKyNkZWZp bmUgX1JIX0tBQklfUkVQTEFDRTEwKF9uZXcsIC4uLikJX25ldzsgX1JIX0tBQklfUkVQTEFDRTko X19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBMQUNFMTEoX25ldywgLi4uKQlfbmV3 OyBfUkhfS0FCSV9SRVBMQUNFMTAoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9SRVBM QUNFMTIoX25ldywgLi4uKQlfbmV3OyBfUkhfS0FCSV9SRVBMQUNFMTEoX19WQV9BUkdTX18pCi0r Ci0rI2RlZmluZSBSSF9LQUJJX1JFUExBQ0VfU1BMSVQoX29yaWcsIC4uLikJX1JIX0tBQklfUkVQ TEFDRShfb3JpZywgXAotKwkJc3RydWN0IHsgX19QQVNURShfUkhfS0FCSV9SRVBMQUNFLCBDT1VO VF9BUkdTKF9fVkFfQVJHU19fKSkoX19WQV9BUkdTX18pIH0pOwotKwotKyMgZGVmaW5lIFJIX0tB QklfUkVTRVJWRShuKQkJX1JIX0tBQklfUkVTRVJWRShuKTsKLSsKLSsjZGVmaW5lIF9SSF9LQUJJ X1VTRTEobiwgX25ldykJX1JIX0tBQklfUkVTRVJWRShuKSwgX25ldwotKyNkZWZpbmUgX1JIX0tB QklfVVNFMihuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7IF9SSF9LQUJJX1VTRTEoX19WQV9B UkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9VU0UzKG4sIC4uLikJX1JIX0tBQklfUkVTRVJWRShu KTsgX1JIX0tBQklfVVNFMihfX1ZBX0FSR1NfXykKLSsjZGVmaW5lIF9SSF9LQUJJX1VTRTQobiwg Li4uKQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9VU0UzKF9fVkFfQVJHU19fKQotKyNk ZWZpbmUgX1JIX0tBQklfVVNFNShuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7IF9SSF9LQUJJ X1VTRTQoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9VU0U2KG4sIC4uLikJX1JIX0tB QklfUkVTRVJWRShuKTsgX1JIX0tBQklfVVNFNShfX1ZBX0FSR1NfXykKLSsjZGVmaW5lIF9SSF9L QUJJX1VTRTcobiwgLi4uKQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9VU0U2KF9fVkFf QVJHU19fKQotKyNkZWZpbmUgX1JIX0tBQklfVVNFOChuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUo bik7IF9SSF9LQUJJX1VTRTcoX19WQV9BUkdTX18pCi0rI2RlZmluZSBfUkhfS0FCSV9VU0U5KG4s IC4uLikJX1JIX0tBQklfUkVTRVJWRShuKTsgX1JIX0tBQklfVVNFOChfX1ZBX0FSR1NfXykKLSsj ZGVmaW5lIF9SSF9LQUJJX1VTRTEwKG4sIC4uLikJX1JIX0tBQklfUkVTRVJWRShuKTsgX1JIX0tB QklfVVNFOShfX1ZBX0FSR1NfXykKLSsjZGVmaW5lIF9SSF9LQUJJX1VTRTExKG4sIC4uLikJX1JI X0tBQklfUkVTRVJWRShuKTsgX1JIX0tBQklfVVNFMTAoX19WQV9BUkdTX18pCi0rI2RlZmluZSBf UkhfS0FCSV9VU0UxMihuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7IF9SSF9LQUJJX1VTRTEx KF9fVkFfQVJHU19fKQotKwotKyNkZWZpbmUgX1JIX0tBQklfVVNFKC4uLikJX1JIX0tBQklfUkVQ TEFDRShfX1ZBX0FSR1NfXykKLSsjZGVmaW5lIFJIX0tBQklfVVNFKG4sIC4uLikJX1JIX0tBQklf VVNFKF9fUEFTVEUoX1JIX0tBQklfVVNFLCBDT1VOVF9BUkdTKF9fVkFfQVJHU19fKSkobiwgX19W QV9BUkdTX18pKTsKLSsKLSsjIGRlZmluZSBSSF9LQUJJX1VTRV9TUExJVChuLCAuLi4pCVJIX0tB QklfUkVQTEFDRV9TUExJVChfUkhfS0FCSV9SRVNFUlZFKG4pLCBfX1ZBX0FSR1NfXykKLSsKLSsj IGRlZmluZSBfUkhfS0FCSV9SRVNFUlZFKG4pCQl1bnNpZ25lZCBsb25nIHJoX3Jlc2VydmVkIyNu Ci0rCi0rI2RlZmluZSBSSF9LQUJJX0VYQ0xVREUoX2VsZW0pCQlfUkhfS0FCSV9FWENMVURFKF9l bGVtKTsKLSsKLSsjZGVmaW5lIFJIX0tBQklfRVhDTFVERV9XSVRIX1NJWkUoX25ldywgX3NpemUp CQkJCVwKLSsJdW5pb24gewkJCQkJCQkJXAotKwkJUkhfS0FCSV9FWENMVURFKF9uZXcpCQkJCQlc Ci0rCQl1bnNpZ25lZCBsb25nIFJIX0tBQklfVU5JUVVFX0lEW19zaXplXTsJCQlcCi0rCQlfX1JI X0tBQklfQ0hFQ0tfU0laRShfbmV3LCA4ICogKF9zaXplKSkJCQlcCi0rCX07Ci0rCi0rI2RlZmlu ZSBSSF9LQUJJX0VYVEVORF9XSVRIX1NJWkUoX25ldywgX3NpemUpCQkJCVwKLSsJUkhfS0FCSV9F WFRFTkQodW5pb24gewkJCQkJCVwKLSsJCV9uZXc7CQkJCQkJCVwKLSsJCXVuc2lnbmVkIGxvbmcg UkhfS0FCSV9VTklRVUVfSURbX3NpemVdOwkJCVwKLSsJCV9fUkhfS0FCSV9DSEVDS19TSVpFKF9u ZXcsIDggKiAoX3NpemUpKQkJCVwKLSsJfSkKLSsKLSsjZGVmaW5lIF9SSF9LQUJJX0FVWF9QVFIo X3N0cnVjdCkJCQkJCVwKLSsJc2l6ZV90IF9zdHJ1Y3QjI19zaXplX3JoOwkJCQkJXAotKwlfUkhf S0FCSV9FWENMVURFKHN0cnVjdCBfc3RydWN0IyNfcmggKl9yaCkKLSsjZGVmaW5lIFJIX0tBQklf QVVYX1BUUihfc3RydWN0KQkJCQkJXAotKwlfUkhfS0FCSV9BVVhfUFRSKF9zdHJ1Y3QpOwotKwot KyNkZWZpbmUgX1JIX0tBQklfQVVYX0VNQkVEKF9zdHJ1Y3QpCQkJCQlcCi0rCXNpemVfdCBfc3Ry dWN0IyNfc2l6ZV9yaDsJCQkJCVwKLSsJX1JIX0tBQklfRVhDTFVERShzdHJ1Y3QgX3N0cnVjdCMj X3JoIF9yaCkKLSsjZGVmaW5lIFJIX0tBQklfQVVYX0VNQkVEKF9zdHJ1Y3QpCQkJCQlcCi0rCV9S SF9LQUJJX0FVWF9FTUJFRChfc3RydWN0KTsKLSsKLSsjZGVmaW5lIFJIX0tBQklfVVNFX0FVWF9Q VFIobjEsIG4yLCBfc3RydWN0KQkJCQlcCi0rCVJIX0tBQklfVVNFKG4xLCBuMiwJCQkJCQlcCi0r CQkgICAgIHN0cnVjdCB7IFJIX0tBQklfQVVYX1BUUihfc3RydWN0KSB9KQotKwotKyNkZWZpbmUg UkhfS0FCSV9BVVhfU0VUX1NJWkUoX25hbWUsIF9zdHJ1Y3QpICh7CQkJCVwKLSsJKF9uYW1lKS0+ X3N0cnVjdCMjX3NpemVfcmggPSBzaXplb2Yoc3RydWN0IF9zdHJ1Y3QjI19yaCk7CVwKLSt9KQot KwotKyNkZWZpbmUgUkhfS0FCSV9BVVhfSU5JVF9TSVpFKF9zdHJ1Y3QpCQkJCQlcCi0rCS5fc3Ry dWN0IyNfc2l6ZV9yaCA9IHNpemVvZihzdHJ1Y3QgX3N0cnVjdCMjX3JoKSwKLSsKLSsjZGVmaW5l IFJIX0tBQklfQVVYKF9wdHIsIF9zdHJ1Y3QsIF9maWVsZCkgKHsJCQkJXAotKwlzaXplX3QgX19v ZmYgPSBvZmZzZXRvZihzdHJ1Y3QgX3N0cnVjdCMjX3JoLCBfZmllbGQpOwkJXAotKwkoX3B0cikt Pl9zdHJ1Y3QjI19zaXplX3JoID4gX19vZmYgPyB0cnVlIDogZmFsc2U7CQlcCi0rfSkKLSsKLSsj ZW5kaWYgLyogX0xJTlVYX1JIX0tBQklfSCAqLwotZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv cmhfd2FpdmVkLmggYi9pbmNsdWRlL2xpbnV4L3JoX3dhaXZlZC5oCi1uZXcgZmlsZSBtb2RlIDEw MDY0NAotaW5kZXggMDAwMDAwMDAwMDAwLi5kNjJhOWU4OTZiNWUKLS0tLSAvZGV2L251bGwKLSsr KyBiL2luY2x1ZGUvbGludXgvcmhfd2FpdmVkLmgKLUBAIC0wLDAgKzEsMTkgQEAKLSsvKiBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAqLwotKy8qCi0rICogaW5jbHVkZS9saW51eC9y aF93YWl2ZWQuaAotKyAqCi0rICogcmhfd2FpdmVkIGNtZGxpbmUgcGFyYW1ldGVyIGludGVyZmFj ZS4KLSsgKgotKyAqIENvcHlyaWdodCAoQykgMjAyNCwgUmVkIEhhdCwgSW5jLiAgUmljYXJkbyBS b2JhaW5hIDxycm9iYWluYUByZWRoYXQuY29tPgotKyAqLwotKyNpZm5kZWYgX1JIX1dBSVZFRF9I Ci0rI2RlZmluZSBfUkhfV0FJVkVEX0gKLSsKLStlbnVtIHJoX3dhaXZlZF9pdGVtcyB7Ci0rCS8q IFJIX1dBSVZFRF9JVEVNUyBtdXN0IGFsd2F5cyBiZSB0aGUgbGFzdCBpdGVtIGluIHRoZSBlbnVt ICovCi0rCVJIX1dBSVZFRF9JVEVNUywKLSt9OwotKwotK2Jvb2wgaXNfcmhfd2FpdmVkKGVudW0g cmhfd2FpdmVkX2l0ZW1zIGZlYXQpOwotKwotKyNlbmRpZiAvKiBfUkhfV0FJVkVEX0ggKi8KLWRp ZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmggYi9pbmNsdWRlL2xpbnV4L3NlY3Vy aXR5LmgKLWluZGV4IDE1M2U5MDQzMDU4Zi4uMmVlM2E4OTkwOTY4IDEwMDY0NAotLS0tIGEvaW5j bHVkZS9saW51eC9zZWN1cml0eS5oCi0rKysgYi9pbmNsdWRlL2xpbnV4L3NlY3VyaXR5LmgKLUBA IC0yNDM5LDQgKzI0MzksMTMgQEAgc3RhdGljIGlubGluZSB2b2lkIHNlY3VyaXR5X2luaXRyYW1m c19wb3B1bGF0ZWQodm9pZCkKLSB9Ci0gI2VuZGlmIC8qIENPTkZJR19TRUNVUklUWSAqLwotIAot KyNpZmRlZiBDT05GSUdfU0VDVVJJVFlfTE9DS0RPV05fTFNNCi0rZXh0ZXJuIGludCBzZWN1cml0 eV9sb2NrX2tlcm5lbF9kb3duKGNvbnN0IGNoYXIgKndoZXJlLCBlbnVtIGxvY2tkb3duX3JlYXNv biBsZXZlbCk7Ci0rI2Vsc2UKLStzdGF0aWMgaW5saW5lIGludCBzZWN1cml0eV9sb2NrX2tlcm5l bF9kb3duKGNvbnN0IGNoYXIgKndoZXJlLCBlbnVtIGxvY2tkb3duX3JlYXNvbiBsZXZlbCkKLSt7 Ci0rCXJldHVybiAwOwotK30KLSsjZW5kaWYgLyogQ09ORklHX1NFQ1VSSVRZX0xPQ0tET1dOX0xT TSAqLwotKwotICNlbmRpZiAvKiAhIF9fTElOVVhfU0VDVVJJVFlfSCAqLwotZGlmZiAtLWdpdCBh L2luaXQvbWFpbi5jIGIvaW5pdC9tYWluLmMKLWluZGV4IGUzNjMyMzJiNDI4Yi4uMjdkOWQ4MmI3 NjU4IDEwMDY0NAotLS0tIGEvaW5pdC9tYWluLmMKLSsrKyBiL2luaXQvbWFpbi5jCi1AQCAtMTIz Niw4ICsxMjM2LDEwIEBAIHN0YXRpYyBib29sIF9faW5pdF9vcl9tb2R1bGUgaW5pdGNhbGxfYmxh Y2tsaXN0ZWQoaW5pdGNhbGxfdCBmbikKLSAJY2hhciBmbl9uYW1lW0tTWU1fU1lNQk9MX0xFTl07 Ci0gCXVuc2lnbmVkIGxvbmcgYWRkcjsKLSAKLSsjaWZuZGVmIENPTkZJR19SSEVMX0RJRkZFUkVO Q0VTCi0gCWlmIChsaXN0X2VtcHR5KCZibGFja2xpc3RlZF9pbml0Y2FsbHMpKQotIAkJcmV0dXJu IGZhbHNlOwotKyNlbmRpZgotIAotIAlhZGRyID0gKHVuc2lnbmVkIGxvbmcpIGRlcmVmZXJlbmNl X2Z1bmN0aW9uX2Rlc2NyaXB0b3IoZm4pOwotIAlzcHJpbnRfc3ltYm9sX25vX29mZnNldChmbl9u YW1lLCBhZGRyKTsKLUBAIC0xMjQ4LDYgKzEyNTAsOSBAQCBzdGF0aWMgYm9vbCBfX2luaXRfb3Jf bW9kdWxlIGluaXRjYWxsX2JsYWNrbGlzdGVkKGluaXRjYWxsX3QgZm4pCi0gCSAqLwotIAlzdHJy ZXBsYWNlKGZuX25hbWUsICcgJywgJ1wwJyk7Ci0gCi0rI2lmZGVmIENPTkZJR19SSEVMX0RJRkZF UkVOQ0VTCi0rCWluaXRfcmhfY2hlY2tfc3RhdHVzKGZuX25hbWUpOwotKyNlbmRpZgotIAlsaXN0 X2Zvcl9lYWNoX2VudHJ5KGVudHJ5LCAmYmxhY2tsaXN0ZWRfaW5pdGNhbGxzLCBuZXh0KSB7Ci0g CQlpZiAoIXN0cmNtcChmbl9uYW1lLCBlbnRyeS0+YnVmKSkgewotIAkJCXByX2RlYnVnKCJpbml0 Y2FsbCAlcyBibGFja2xpc3RlZFxuIiwgZm5fbmFtZSk7Ci1kaWZmIC0tZ2l0IGEva2VybmVsL01h a2VmaWxlIGIva2VybmVsL01ha2VmaWxlCi1pbmRleCAxZTFhMzE2NzM1NzcuLjYwYWY0ZjZjMjMx NiAxMDA2NDQKLS0tLSBhL2tlcm5lbC9NYWtlZmlsZQotKysrIGIva2VybmVsL01ha2VmaWxlCi1A QCAtMTIsNiArMTIsOCBAQCBvYmoteSAgICAgPSBmb3JrLm8gZXhlY19kb21haW4ubyBleGVjX3N0 YXRlLm8gcGFuaWMubyBcCi0gCSAgICBub3RpZmllci5vIGtzeXNmcy5vIGNyZWQubyByZWJvb3Qu byBcCi0gCSAgICBhc3luYy5vIHJhbmdlLm8gc21wYm9vdC5vIHVjb3VudC5vIHJlZ3NldC5vIGtz eW1zX2NvbW1vbi5vCi0gCi0rb2JqLSQoQ09ORklHX1JIRUxfRElGRkVSRU5DRVMpICs9IHJoX21l c3NhZ2VzLm8gcmhfZmxhZ3MubyByaF93YWl2ZWQubwotK29iai0kKENPTkZJR19VU0VSTU9ERV9E UklWRVIpICs9IHVzZXJtb2RlX2RyaXZlci5vCi0gb2JqLSQoQ09ORklHX01VTFRJVVNFUikgKz0g Z3JvdXBzLm8KLSBvYmotJChDT05GSUdfVkhPU1RfVEFTSykgKz0gdmhvc3RfdGFzay5vCi0gCi1k aWZmIC0tZ2l0IGEva2VybmVsL2JwZi9jb3JlLmMgYi9rZXJuZWwvYnBmL2NvcmUuYwotaW5kZXgg NmUxOWEwMzBkYTZmLi44NDAzMzhjNTFlNmMgMTAwNjQ0Ci0tLS0gYS9rZXJuZWwvYnBmL2NvcmUu YwotKysrIGIva2VybmVsL2JwZi9jb3JlLmMKLUBAIC01NDcsNyArNTQ3LDEyIEBAIHZvaWQgYnBm X3Byb2dfa2FsbHN5bXNfZGVsX2FsbChzdHJ1Y3QgYnBmX3Byb2cgKmZwKQotIC8qIEFsbCBCUEYg SklUIHN5c2N0bCBrbm9icyBoZXJlLiAqLwotIGludCBicGZfaml0X2VuYWJsZSAgIF9fcmVhZF9t b3N0bHkgPSBJU19CVUlMVElOKENPTkZJR19CUEZfSklUX0RFRkFVTFRfT04pOwotIGludCBicGZf aml0X2thbGxzeW1zIF9fcmVhZF9tb3N0bHkgPSBJU19CVUlMVElOKENPTkZJR19CUEZfSklUX0RF RkFVTFRfT04pOwotKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUwotKy8qIFJIRUwtb25s eTogc2V0IGl0IHRvIDEgYnkgZGVmYXVsdCAqLwotK2ludCBicGZfaml0X2hhcmRlbiAgIF9fcmVh ZF9tb3N0bHkgPSAxOwotKyNlbHNlCi0gaW50IGJwZl9qaXRfaGFyZGVuICAgX19yZWFkX21vc3Rs eTsKLSsjZW5kaWYgLyogQ09ORklHX1JIRUxfRElGRkVSRU5DRVMgKi8KLSBsb25nIGJwZl9qaXRf bGltaXQgICBfX3JlYWRfbW9zdGx5OwotIGxvbmcgYnBmX2ppdF9saW1pdF9tYXggX19yZWFkX21v c3RseTsKLSAKLWRpZmYgLS1naXQgYS9rZXJuZWwvYnBmL3N5c2NhbGwuYyBiL2tlcm5lbC9icGYv c3lzY2FsbC5jCi1pbmRleCA2ZGIzMDZkMjNiNDcuLmE3NThmZWViZmUwMyAxMDA2NDQKLS0tLSBh L2tlcm5lbC9icGYvc3lzY2FsbC5jCi0rKysgYi9rZXJuZWwvYnBmL3N5c2NhbGwuYwotQEAgLTI4 LDYgKzI4LDcgQEAKLSAjaW5jbHVkZSA8bGludXgvY3R5cGUuaD4KLSAjaW5jbHVkZSA8bGludXgv bm9zcGVjLmg+Ci0gI2luY2x1ZGUgPGxpbnV4L2F1ZGl0Lmg+Ci0rI2luY2x1ZGUgPGxpbnV4L2lu aXQuaD4KLSAjaW5jbHVkZSA8dWFwaS9saW51eC9idGYuaD4KLSAjaW5jbHVkZSA8bGludXgvcGd0 YWJsZS5oPgotICNpbmNsdWRlIDxsaW51eC9icGZfbHNtLmg+Ci1AQCAtNjYsNiArNjcsMjMgQEAg c3RhdGljIERFRklORV9TUElOTE9DSyhtYXBfaWRyX2xvY2spOwotIHN0YXRpYyBERUZJTkVfSURS KGxpbmtfaWRyKTsKLSBzdGF0aWMgREVGSU5FX1NQSU5MT0NLKGxpbmtfaWRyX2xvY2spOwotIAot K3N0YXRpYyBpbnQgX19pbml0IHVucHJpdmlsZWdlZF9icGZfc2V0dXAoY2hhciAqc3RyKQotK3sK LSsJdW5zaWduZWQgbG9uZyBkaXNhYmxlZDsKLSsJaWYgKCFrc3RydG91bChzdHIsIDAsICZkaXNh YmxlZCkpCi0rCQlzeXNjdGxfdW5wcml2aWxlZ2VkX2JwZl9kaXNhYmxlZCA9ICEhZGlzYWJsZWQ7 Ci0rCi0rCWlmICghc3lzY3RsX3VucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQpIHsKLSsJCXByX3dh cm4oIlVucHJpdmlsZWdlZCBCUEYgaGFzIGJlZW4gZW5hYmxlZCAiCi0rCQkJIih1bnByaXZpbGVn ZWRfYnBmX2Rpc2FibGVkPTAgaGFzIGJlZW4gc3VwcGxpZWQgIgotKwkJCSJpbiBib290IHBhcmFt ZXRlcnMpLCB0YWludGluZyB0aGUga2VybmVsIik7Ci0rCQlhZGRfdGFpbnQoVEFJTlRfVU5QUklW SUxFR0VEX0JQRiwgTE9DS0RFUF9TVElMTF9PSyk7Ci0rCX0KLSsKLSsJcmV0dXJuIDE7Ci0rfQot K19fc2V0dXAoInVucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQ9IiwgdW5wcml2aWxlZ2VkX2JwZl9z ZXR1cCk7Ci0rCi0gaW50IHN5c2N0bF91bnByaXZpbGVnZWRfYnBmX2Rpc2FibGVkIF9fcmVhZF9t b3N0bHkgPQotIAlJU19CVUlMVElOKENPTkZJR19CUEZfVU5QUklWX0RFRkFVTFRfT0ZGKSA/IDIg OiAwOwotIAotQEAgLTY3NTQsNiArNjc3MiwxMSBAQCBzdGF0aWMgaW50IGJwZl91bnByaXZfaGFu ZGxlcihjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICp0YWJsZSwgaW50IHdyaXRlLAotIAlpZiAod3Jp dGUgJiYgIXJldCkgewotIAkJaWYgKGxvY2tlZF9zdGF0ZSAmJiB1bnByaXZfZW5hYmxlICE9IDEp Ci0gCQkJcmV0dXJuIC1FUEVSTTsKLSsJCWlmICghdW5wcml2X2VuYWJsZSkgewotKwkJCXByX3dh cm4oIlVucHJpdmlsZWdlZCBCUEYgaGFzIGJlZW4gZW5hYmxlZCwgIgotKwkJCQkidGFpbnRpbmcg dGhlIGtlcm5lbCIpOwotKwkJCWFkZF90YWludChUQUlOVF9VTlBSSVZJTEVHRURfQlBGLCBMT0NL REVQX1NUSUxMX09LKTsKLSsJCX0KLSAJCSooaW50ICopdGFibGUtPmRhdGEgPSB1bnByaXZfZW5h YmxlOwotIAl9Ci0gCi1kaWZmIC0tZ2l0IGEva2VybmVsL21vZHVsZS9tYWluLmMgYi9rZXJuZWwv bW9kdWxlL21haW4uYwotaW5kZXggNDZkZDhkMjVhNjA1Li5lODJiMmIxM2Y1ODggMTAwNjQ0Ci0t LS0gYS9rZXJuZWwvbW9kdWxlL21haW4uYwotKysrIGIva2VybmVsL21vZHVsZS9tYWluLmMKLUBA IC02Niw2ICs2Niw4IEBACi0gI2RlZmluZSBDUkVBVEVfVFJBQ0VfUE9JTlRTCi0gI2luY2x1ZGUg PHRyYWNlL2V2ZW50cy9tb2R1bGUuaD4KLSAKLSsjaW5jbHVkZSA8bGludXgvcmhfZmxhZ3MuaD4K LSsKLSAvKgotICAqIE11dGV4IHByb3RlY3RzOgotICAqIDEpIExpc3Qgb2YgbW9kdWxlcyAoYWxz byBzYWZlbHkgcmVhZGFibGUgd2l0aGluIFJDVSByZWFkIHNlY3Rpb24pLAotQEAgLTYwNCw2ICs2 MDYsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG1vZHVsZV9hdHRyaWJ1dGUgbW9kaW5mb18jI2Zp ZWxkID0geyAgICAgICAgICAgICAgXAotIAotIE1PRElORk9fQVRUUih2ZXJzaW9uKTsKLSBNT0RJ TkZPX0FUVFIoc3JjdmVyc2lvbik7Ci0rTU9ESU5GT19BVFRSKHJoZWx2ZXJzaW9uKTsKLSAKLSBz dGF0aWMgdm9pZCBzZXR1cF9tb2RpbmZvX2ltcG9ydF9ucyhzdHJ1Y3QgbW9kdWxlICptb2QsIGNv bnN0IGNoYXIgKnMpCi0gewotQEAgLTEwODYsNiArMTA4OSw3IEBAIGNvbnN0IHN0cnVjdCBtb2R1 bGVfYXR0cmlidXRlICpjb25zdCBtb2RpbmZvX2F0dHJzW10gPSB7Ci0gCSZtb2R1bGVfdWV2ZW50 LAotIAkmbW9kaW5mb192ZXJzaW9uLAotIAkmbW9kaW5mb19zcmN2ZXJzaW9uLAotKwkmbW9kaW5m b19yaGVsdmVyc2lvbiwKLSAJJm1vZGluZm9faW1wb3J0X25zLAotIAkmbW9kaW5mb19pbml0c3Rh dGUsCi0gCSZtb2RpbmZvX2NvcmVzaXplLAotQEAgLTMzOTYsNiArMzQwMCwxMSBAQCBzdGF0aWMg aW50IGVhcmx5X21vZF9jaGVjayhzdHJ1Y3QgbG9hZF9pbmZvICppbmZvLCBpbnQgZmxhZ3MpCi0g CQlyZXR1cm4gLUVQRVJNOwotIAl9Ci0gCi0rI2lmZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VT Ci0rCWlmIChnZXRfbW9kaW5mbyhpbmZvLCAiaW50cmVlIikpCi0rCQltb2R1bGVfcmhfY2hlY2tf c3RhdHVzKGluZm8tPm5hbWUpOwotKyNlbmRpZgotKwotIAllcnIgPSByZXdyaXRlX3NlY3Rpb25f aGVhZGVycyhpbmZvLCBmbGFncyk7Ci0gCWlmIChlcnIpCi0gCQlyZXR1cm4gZXJyOwotQEAgLTM5 NzQsNiArMzk4MywxMCBAQCB2b2lkIHByaW50X21vZHVsZXModm9pZCkKLSAJCXByX2NvbnQoIiBb bGFzdCB1bmxvYWRlZDogJXMlc10iLCBsYXN0X3VubG9hZGVkX21vZHVsZS5uYW1lLAotIAkJCWxh c3RfdW5sb2FkZWRfbW9kdWxlLnRhaW50cyk7Ci0gCXByX2NvbnQoIlxuIik7Ci0rCi0rI2lmZGVm IENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCi0rCXJoX3ByaW50X2ZsYWdzKCk7Ci0rI2VuZGlmCi0g fQotIAotICNpZmRlZiBDT05GSUdfTU9EVUxFX0RFQlVHRlMKLWRpZmYgLS1naXQgYS9rZXJuZWwv bW9kdWxlL3NpZ25pbmcuYyBiL2tlcm5lbC9tb2R1bGUvc2lnbmluZy5jCi1pbmRleCA1OTBiYTI5 Yzg1YWIuLjAyMTUzZDg1NzUzMSAxMDA2NDQKLS0tLSBhL2tlcm5lbC9tb2R1bGUvc2lnbmluZy5j Ci0rKysgYi9rZXJuZWwvbW9kdWxlL3NpZ25pbmcuYwotQEAgLTYxLDEwICs2MSwxNyBAQCBpbnQg bW9kX3ZlcmlmeV9zaWcoY29uc3Qgdm9pZCAqbW9kLCBzdHJ1Y3QgbG9hZF9pbmZvICppbmZvKQot IAltb2RsZW4gLT0gc2lnX2xlbiArIHNpemVvZihtcyk7Ci0gCWluZm8tPmxlbiA9IG1vZGxlbjsK LSAKLS0JcmV0dXJuIHZlcmlmeV9wa2NzN19zaWduYXR1cmUobW9kLCBtb2RsZW4sIG1vZCArIG1v ZGxlbiwgc2lnX2xlbiwKLSsJcmV0ID0gdmVyaWZ5X3BrY3M3X3NpZ25hdHVyZShtb2QsIG1vZGxl biwgbW9kICsgbW9kbGVuLCBzaWdfbGVuLAotIAkJCQkgICAgICBWRVJJRllfVVNFX1NFQ09OREFS WV9LRVlSSU5HLAotIAkJCQkgICAgICBWRVJJRllJTkdfTU9EVUxFX1NJR05BVFVSRSwKLSAJCQkJ ICAgICAgTlVMTCwgTlVMTCk7Ci0rCWlmIChyZXQgPT0gLUVOT0tFWSAmJiBJU19FTkFCTEVEKENP TkZJR19JTlRFR1JJVFlfUExBVEZPUk1fS0VZUklORykpIHsKLSsJCXJldCA9IHZlcmlmeV9wa2Nz N19zaWduYXR1cmUobW9kLCBtb2RsZW4sIG1vZCArIG1vZGxlbiwgc2lnX2xlbiwKLSsJCQkJVkVS SUZZX1VTRV9QTEFURk9STV9LRVlSSU5HLAotKwkJCQlWRVJJRllJTkdfTU9EVUxFX1NJR05BVFVS RSwKLSsJCQkJTlVMTCwgTlVMTCk7Ci0rCX0KLSsJcmV0dXJuIHJldDsKLSB9Ci0gCi0gaW50IG1v ZHVsZV9zaWdfY2hlY2soc3RydWN0IGxvYWRfaW5mbyAqaW5mbywgaW50IGZsYWdzKQotZGlmZiAt LWdpdCBhL2tlcm5lbC9wYW5pYy5jIGIva2VybmVsL3BhbmljLmMKLWluZGV4IDIxMzcyNWI2MTJh YS4uYTgyM2QwMWYxZjA1IDEwMDY0NAotLS0tIGEva2VybmVsL3BhbmljLmMKLSsrKyBiL2tlcm5l bC9wYW5pYy5jCi1AQCAtODI2LDYgKzgyNiwxOCBAQCBjb25zdCBzdHJ1Y3QgdGFpbnRfZmxhZyB0 YWludF9mbGFnc1tUQUlOVF9GTEFHU19DT1VOVF0gPSB7Ci0gCVRBSU5UX0ZMQUcoUkFORFNUUlVD VCwJCQknVCcsICcgJyksCi0gCVRBSU5UX0ZMQUcoVEVTVCwJCQknTicsICcgJyksCi0gCVRBSU5U X0ZMQUcoRldDVEwsCQkJJ0onLCAnICcpLAotKwlUQUlOVF9GTEFHKDIwLAkJCQknPycsICctJyks Ci0rCVRBSU5UX0ZMQUcoMjEsCQkJCSc/JywgJy0nKSwKLSsJVEFJTlRfRkxBRygyMiwJCQkJJz8n LCAnLScpLAotKwlUQUlOVF9GTEFHKDIzLAkJCQknPycsICctJyksCi0rCVRBSU5UX0ZMQUcoMjQs CQkJCSc/JywgJy0nKSwKLSsJVEFJTlRfRkxBRygyNSwJCQkJJz8nLCAnLScpLAotKwlUQUlOVF9G TEFHKFBBUlRORVJfU1VQUE9SVEVELAkJJ3AnLCAnICcpLAotKwlUQUlOVF9GTEFHKFNVUFBPUlRf UkVNT1ZFRCwJCSdoJywgJyAnKSwKLSsJVEFJTlRfRkxBRyhSRVNFUlZFRDI4LAkJCSc/JywgJy0n KSwKLSsJVEFJTlRfRkxBRyhSRVNFUlZFRDI5LAkJCSc/JywgJy0nKSwKLSsJVEFJTlRfRkxBRyhS RVNFUlZFRDMwLAkJCSc/JywgJy0nKSwKLSsJVEFJTlRfRkxBRyhVTlBSSVZJTEVHRURfQlBGLAkJ J3UnLCAnICcpLAotIH07Ci0gCi0gI3VuZGVmIFRBSU5UX0ZMQUcKLWRpZmYgLS1naXQgYS9rZXJu ZWwvcmhfZmxhZ3MuYyBiL2tlcm5lbC9yaF9mbGFncy5jCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAot aW5kZXggMDAwMDAwMDAwMDAwLi4xMGQyNjk1OGY4NDAKLS0tLSAvZGV2L251bGwKLSsrKyBiL2tl cm5lbC9yaF9mbGFncy5jCi1AQCAtMCwwICsxLDExNSBAQAotKyNpbmNsdWRlIDxsaW51eC9rZXJu ZWwuaD4KLSsjaW5jbHVkZSA8bGludXgvbGlzdC5oPgotKyNpbmNsdWRlIDxsaW51eC9wcm9jX2Zz Lmg+Ci0rI2luY2x1ZGUgPGxpbnV4L3NlcV9maWxlLmg+Ci0rI2luY2x1ZGUgPGxpbnV4L3NsYWIu aD4KLSsjaW5jbHVkZSA8bGludXgvc3BpbmxvY2suaD4KLSsjaW5jbHVkZSA8bGludXgvcmhfZmxh Z3MuaD4KLSsKLSsjZGVmaW5lIFJIX0ZMQUdfTkFNRV9MRU4JMzIKLSsjZGVmaW5lIE1BWF9SSF9G TEFHUwkJMTI4Ci0rI2RlZmluZSBNQVhfUkhfRkxBR19OQU1FX0xFTgkoTUFYX1JIX0ZMQUdTICog UkhfRkxBR19OQU1FX0xFTikKLSsKLStzdHJ1Y3QgcmhfZmxhZyB7Ci0rCXN0cnVjdCBsaXN0X2hl YWQgbGlzdDsKLSsJY2hhciBuYW1lW1JIX0ZMQUdfTkFNRV9MRU5dOwotK307Ci0rCi0rc3RhdGlj IExJU1RfSEVBRChyaF9mbGFnX2xpc3QpOwotK3N0YXRpYyBERUZJTkVfU1BJTkxPQ0socmhfZmxh Z19sb2NrKTsKLSsKLStib29sIF9fcmhfYWRkX2ZsYWcoY29uc3QgY2hhciAqZmxhZ19uYW1lKQot K3sKLSsJc3RydWN0IHJoX2ZsYWcgKmZlYXQsICppdGVyOwotKwotKwlCVUdfT04oaW5faW50ZXJy dXB0KCkpOwotKwlmZWF0ID0ga3phbGxvYyhzaXplb2YoKmZlYXQpLCBHRlBfQVRPTUlDKTsKLSsJ aWYgKFdBUk4oIWZlYXQsICJBZGRpbmcgUmVkIEhhdCBmbGFnICVzLlxuIiwgZmxhZ19uYW1lKSkK LSsJCXJldHVybiBmYWxzZTsKLSsJc3Ryc2NweShmZWF0LT5uYW1lLCBmbGFnX25hbWUsIFJIX0ZM QUdfTkFNRV9MRU4pOwotKwotKwlzcGluX2xvY2soJnJoX2ZsYWdfbG9jayk7Ci0rCWxpc3RfZm9y X2VhY2hfZW50cnlfcmN1KGl0ZXIsICZyaF9mbGFnX2xpc3QsIGxpc3QpIHsKLSsJCWlmICghc3Ry Y21wKGl0ZXItPm5hbWUsIGZsYWdfbmFtZSkpIHsKLSsJCQlrZnJlZShmZWF0KTsKLSsJCQlmZWF0 ID0gTlVMTDsKLSsJCQlicmVhazsKLSsJCX0KLSsJfQotKwlpZiAoZmVhdCkKLSsJCWxpc3RfYWRk X3JjdSgmZmVhdC0+bGlzdCwgJnJoX2ZsYWdfbGlzdCk7Ci0rCXNwaW5fdW5sb2NrKCZyaF9mbGFn X2xvY2spOwotKwotKwlpZiAoZmVhdCkKLSsJCXByX2luZm8oIkFkZGluZyBSZWQgSGF0IGZsYWcg JXMuXG4iLCBmbGFnX25hbWUpOwotKwlyZXR1cm4gdHJ1ZTsKLSt9Ci0rRVhQT1JUX1NZTUJPTChf X3JoX2FkZF9mbGFnKTsKLSsKLSt2b2lkIHJoX3ByaW50X2ZsYWdzKHZvaWQpCi0rewotKwlzdHJ1 Y3QgcmhfZmxhZyAqZmVhdDsKLSsKLSsJLyoKLSsJICogVGhpcyBmdW5jdGlvbiBjYW5ub3QgZG8g YW55IGxvY2tpbmcsIHdlJ3JlIG9vcHNpbmcuIFRyYXZlcnNpbmcKLSsJICogcmhfZmxhZ19saXN0 IGlzIG9rYXksIHRob3VnaCwgZXZlbiB3aXRob3V0IHRoZSByY3VfcmVhZF9sb2NrCi0rCSAqIHRh a2VuOiB3ZSBuZXZlciBkZWxldGUgZnJvbSB0aGF0IGxpc3QgYW5kIHRodXMgZG9uJ3QgbmVlZCB0 aGUKLSsJICogZGVsYXllZCBmcmVlLiBBbGwgd2UgbmVlZCBhcmUgdGhlIHNtcCBiYXJyaWVycyBp bnZva2VkIGJ5IHRoZSByY3UKLSsJICogbGlzdCBtYW5pcHVsYXRpb24gcm91dGluZXMuCi0rCSAq LwotKwlpZiAobGlzdF9lbXB0eSgmcmhfZmxhZ19saXN0KSkKLSsJCXJldHVybjsKLSsJcHJpbnRr KEtFUk5fREVGQVVMVCAiUmVkIEhhdCBmbGFnczoiKTsKLSsJbGlzdF9mb3JfZWFjaF9lbnRyeV9s b2NrbGVzcyhmZWF0LCAmcmhfZmxhZ19saXN0LCBsaXN0KSB7Ci0rCQlwcl9jb250KCIgJXMiLCBm ZWF0LT5uYW1lKTsKLSsJfQotKwlwcl9jb250KCJcbiIpOwotK30KLStFWFBPUlRfU1lNQk9MKHJo X3ByaW50X2ZsYWdzKTsKLSsKLSsjaWZkZWYgQ09ORklHX1NZU0NUTAotK3N0YXRpYyBpbnQgcmhf ZmxhZ3Nfc2hvdyhjb25zdCBzdHJ1Y3QgY3RsX3RhYmxlICpjdGwsIGludCB3cml0ZSwKLSsJCQkg ICAgdm9pZCBfX3VzZXIgKmJ1ZmZlciwgc2l6ZV90ICpsZW5wLAotKwkJCSAgICBsb2ZmX3QgKnBw b3MpCi0rewotKwlzdHJ1Y3QgY3RsX3RhYmxlIHRibCA9IHsgLm1heGxlbiA9IE1BWF9SSF9GTEFH X05BTUVfTEVOLCB9OwotKwlzdHJ1Y3QgcmhfZmxhZyAqZmVhdDsKLSsJc2l6ZV90IG9mZnMgPSAw OwotKwlpbnQgcmV0OwotKwotKwl0YmwuZGF0YSA9IGttYWxsb2ModGJsLm1heGxlbiwgR0ZQX0tF Uk5FTCk7Ci0rCWlmICghdGJsLmRhdGEpCi0rCQlyZXR1cm4gLUVOT01FTTsKLSsJKChjaGFyICop dGJsLmRhdGEpWzBdID0gJ1wwJzsKLSsKLSsJcmN1X3JlYWRfbG9jaygpOwotKwlsaXN0X2Zvcl9l YWNoX2VudHJ5X3JjdShmZWF0LCAmcmhfZmxhZ19saXN0LCBsaXN0KSB7Ci0rCQlvZmZzICs9IHNj bnByaW50Zih0YmwuZGF0YSArIG9mZnMsIHRibC5tYXhsZW4gLSBvZmZzLCAiJXMlcyIsCi0rCQkJ CSAgb2ZmcyA9PSAwID8gIiIgOiAiICIsIGZlYXQtPm5hbWUpOwotKwl9Ci0rCXJjdV9yZWFkX3Vu bG9jaygpOwotKwotKwlyZXQgPSBwcm9jX2Rvc3RyaW5nKCZ0YmwsIHdyaXRlLCBidWZmZXIsIGxl bnAsIHBwb3MpOwotKwlrZnJlZSh0YmwuZGF0YSk7Ci0rCXJldHVybiByZXQ7Ci0rfQotKwotK3N0 YXRpYyBzdHJ1Y3QgY3RsX3RhYmxlIHJoX2ZsYWdzX3RhYmxlW10gPSB7Ci0rCXsKLSsJCS5wcm9j bmFtZSA9ICJyaF9mbGFncyIsCi0rCQkuZGF0YSA9ICZyaF9mbGFnX2xpc3QsCi0rCQkubWF4bGVu ID0gTUFYX1JIX0ZMQUdfTkFNRV9MRU4sCi0rCQkubW9kZSA9IDA0NDQsCi0rCQkucHJvY19oYW5k bGVyID0gcmhfZmxhZ3Nfc2hvdywKLSsJfSwKLSt9OwotKyNlbmRpZgotKwotK3N0YXRpYyBfX2lu aXQgaW50IHJoX2ZsYWdzX2luaXQodm9pZCkKLSt7Ci0rI2lmZGVmIENPTkZJR19TWVNDVEwKLSsJ cmVnaXN0ZXJfc3lzY3RsX2luaXQoImtlcm5lbCIsIHJoX2ZsYWdzX3RhYmxlKTsKLSsjZW5kaWYK LSsJcmV0dXJuIDA7Ci0rfQotK3N1YnN5c19pbml0Y2FsbChyaF9mbGFnc19pbml0KTsKLWRpZmYg LS1naXQgYS9rZXJuZWwvcmhfbWVzc2FnZXMuYyBiL2tlcm5lbC9yaF9tZXNzYWdlcy5jCi1uZXcg ZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAwLi5iYjY5ZTg5NjU3NDgKLS0tLSAv ZGV2L251bGwKLSsrKyBiL2tlcm5lbC9yaF9tZXNzYWdlcy5jCi1AQCAtMCwwICsxLDQxNCBAQAot Ky8qCi0rICogVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMgYXJlIHVzZWQgYnkgUmVkIEhhdCB0byBp bmRpY2F0ZSB0byB1c2VycyB0aGF0Ci0rICogaGFyZHdhcmUgYW5kIGRyaXZlcnMgYXJlIHVuc3Vw cG9ydGVkLCBvciBoYXZlIGxpbWl0ZWQgc3VwcG9ydCBpbiBSSEVMIG1ham9yCi0rICogYW5kIG1p bm9yIHJlbGVhc2VzLiAgVGhlc2UgZnVuY3Rpb25zIG91dHB1dCBsb3VkIHdhcm5pbmcgbWVzc2Fn ZXMgdG8gdGhlIGVuZAotKyAqIHVzZXIgYW5kIHNob3VsZCBiZSBVU0VEIFdJVEggQ0FVVElPTi4K LSsgKgotKyAqIEFueSB1c2Ugb2YgdGhlc2UgZnVuY3Rpb25zIF9NVVNUXyBiZSBkb2N1bWVudGVk IGluIHRoZSBSSEVMIFJlbGVhc2UgTm90ZXMsCi0rICogYW5kIGhhdmUgYXBwcm92YWwgb2YgbWFu YWdlbWVudC4KLSsgKgotKyAqIEdlbmVyYWxseSwgdGhlIHByb2Nlc3Mgb2YgZGlzYWJsaW5nIGEg ZHJpdmVyIG9yIGRldmljZSBpbiBSSEVMIHJlcXVpcmVzIHRoZQotKyAqIGRyaXZlciBvciBkZXZp Y2UgdG8gYmUgbWFya2VkIGFzICdkZXByZWNhdGVkJyBpbiBhbGwgZXhpc3RpbmcgcmVsZWFzZXMs IGFuZAotKyAqIHRoZW4gZWl0aGVyICd1bm1haW50YWluZWQnIG9yICdkaXNhYmxlZCcgaW4gYSBm dXR1cmUgcmVsZWFzZS4KLSsgKgotKyAqIEluIGdlbmVyYWwsIGRlcHJlY2F0ZWQgYW5kIHVubWFp bnRhaW5lZCBkcml2ZXJzIGNvbnRpbnVlIHRvIHJlY2VpdmUgc2VjdXJpdHkKLSsgKiByZWxhdGVk IGZpeGVzIHVudGlsIHRoZXkgYXJlIGRpc2FibGVkLgotKyAqLwotKwotKyNpbmNsdWRlIDxsaW51 eC9rZXJuZWwuaD4KLSsjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Ci0rI2luY2x1ZGUgPGxpbnV4 L3BjaS5oPgotKyNpbmNsdWRlICJyaF9tZXNzYWdlcy5oIgotKwotKy8qKgotKyAqIG1hcmtfaGFy ZHdhcmVfdW5tYWludGFpbmVkKCkgLSBNYXJrIGhhcmR3YXJlIGFzIHVubWFpbnRhaW5lZC4KLSsg KiBAZHJpdmVyX25hbWU6IGRyaXZlciBuYW1lCi0rICogQGZtdDogZm9ybWF0IGZvciBkZXZpY2Ug ZGVzY3JpcHRpb24KLSsgKiBALi4uOiBhcmdzIGZvciBkZXZpY2UgZGVzY3JpcHRpb24KLSsgKgot KyAqIENhbGxlZCB0byBub3RpZnkgdXNlcnMgdGhhdCB0aGUgZGV2aWNlIHdpbGwgbm8gbG9uZ2Vy IGJlIHRlc3RlZCBvbiBhIHJvdXRpbmUKLSsgKiBiYXNpcyBhbmQgZHJpdmVyIGNvZGUgYXNzb2Np YXRlZCB3aXRoIHRoaXMgZGV2aWNlIGlzIG5vIGxvbmdlciBiZWluZyB1cGRhdGVkLgotKyAqIFJl ZCBIYXQgbWF5LCBhdCB0aGVpciBvd24gZGlzY3JldGlvbiwgZml4IHNlY3VyaXR5LXJlbGF0ZWQg YW5kIGNyaXRpY2FsCi0rICogaXNzdWVzLiAgU3VwcG9ydCBmb3IgdGhpcyBkZXZpY2Ugd2lsbCBi ZSBkaXNhYmxlZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlCi0rICogYW5kIHVzZXJzIGRlcGxv eWluZyB0aGlzIGRldmljZSBzaG91bGQgcGxhbiB0byByZXBsYWNlIHRoZSBkZXZpY2UgaW4KLSsg KiBwcm9kdWN0aW9uIHN5c3RlbXMuCi0rICoKLSsgKiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBiZSB1 c2VkIHdoZW4gdGhlIGRyaXZlcidzIHVzYWdlIGNhbiBiZSB0aWVkIHRvIGEKLSsgKiBzcGVjaWZp YyBoYXJkd2FyZSBkZXZpY2UuICBGb3IgZXhhbXBsZSwgYSBuZXR3b3JrIGRldmljZSBkcml2ZXIg bG9hZGluZyBvbiBhCi0rICogc3BlY2lmaWMgZGV2aWNlIHRoYXQgaXMgbm8gbG9uZ2VyIG1haW50 YWluZWQgYnkgdGhlIG1hbnVmYWN0dXJlci4KLSsgKgotKyAqIFJlc2VydmVkIGZvciBJbnRlcm5h bCBSZWQgSGF0IHVzZSBvbmx5LgotKyAqLwotK3ZvaWQgX19tYXliZV91bnVzZWQgbWFya19oYXJk d2FyZV91bm1haW50YWluZWQoY29uc3QgY2hhciAqZHJpdmVyX25hbWUsIGNoYXIgKmZtdCwgLi4u KQotK3sKLSsJY2hhciBkZXZpY2VfZGVzY3JpcHRpb25bREVWX0RFU0NfTEVOXTsKLSsJdmFfbGlz dCBhcmdzOwotKwotKwl2YV9zdGFydChhcmdzLCBmbXQpOwotKwl2c25wcmludGYoZGV2aWNlX2Rl c2NyaXB0aW9uLCBERVZfREVTQ19MRU4sIGZtdCwgYXJncyk7Ci0rCXByX2NyaXQoUkhfVU5NQUlO VF9IVywKLSsJCWRyaXZlcl9uYW1lLCBkZXZpY2VfZGVzY3JpcHRpb24pOwotKwl2YV9lbmQoYXJn cyk7Ci0rfQotK0VYUE9SVF9TWU1CT0wobWFya19oYXJkd2FyZV91bm1haW50YWluZWQpOwotKwot Ky8qKgotKyAqIG1hcmtfaGFyZHdhcmVfZGVwcmVjYXRlZCgpIC0gTWFyayBoYXJkd2FyZSBhcyBk ZXByZWNhdGVkLgotKyAqIEBkcml2ZXJfbmFtZTogZHJpdmVyIG5hbWUKLSsgKiBAZm10OiBmb3Jt YXQgZm9yIGRldmljZSBkZXNjcmlwdGlvbgotKyAqIEAuLi46IGFyZ3MgZm9yIGRldmljZSBkZXNj cmlwdGlvbgotKyAqCi0rICogQ2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0aGF0IHN1cHBvcnQgZm9y IHRoZSBkZXZpY2UgaXMgcGxhbm5lZCB0byBiZQotKyAqIHVubWFpbnRhaW5lZCBpbiBhIGZ1dHVy ZSBtYWpvciByZWxlYXNlLCBhbmQgd2lsbCBldmVudHVhbGx5IGJlIGRpc2FibGVkIGluIGEKLSsg KiBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gIFRoaXMgZGV2aWNlIHNob3VsZCBub3QgYmUgdXNlZCBp biBuZXcgcHJvZHVjdGlvbgotKyAqIGVudmlyb25tZW50cyBhbmQgdXNlcnMgc2hvdWxkIHJlcGxh Y2UgdGhlIGRldmljZSBpbiBwcm9kdWN0aW9uIHN5c3RlbXMuCi0rICoKLSsgKiBUaGlzIGZ1bmN0 aW9uIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlIGRyaXZlcidzIHVzYWdlIGNhbiBiZSB0aWVkIHRv IGEKLSsgKiBzcGVjaWZpYyBoYXJkd2FyZSBkZXZpY2UuICBGb3IgZXhhbXBsZSwgYSBuZXR3b3Jr IGRldmljZSBkcml2ZXIgbG9hZGluZyBvbiBhCi0rICogc3BlY2lmaWMgZGV2aWNlIHRoYXQgaXMg bm8gbG9uZ2VyIG1haW50YWluZWQgYnkgdGhlIG1hbnVmYWN0dXJlci4KLSsgKgotKyAqIFJlc2Vy dmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgotKyAqLwotK3ZvaWQgX19tYXliZV91 bnVzZWQgbWFya19oYXJkd2FyZV9kZXByZWNhdGVkKGNvbnN0IGNoYXIgKmRyaXZlcl9uYW1lLCBj aGFyICpmbXQsIC4uLikKLSt7Ci0rCWNoYXIgZGV2aWNlX2Rlc2NyaXB0aW9uW0RFVl9ERVNDX0xF Tl07Ci0rCXZhX2xpc3QgYXJnczsKLSsKLSsJdmFfc3RhcnQoYXJncywgZm10KTsKLSsJdnNucHJp bnRmKGRldmljZV9kZXNjcmlwdGlvbiwgREVWX0RFU0NfTEVOLCBmbXQsIGFyZ3MpOwotKwlwcl9j cml0KFJIX0RFUFJFQ0FURURfSFcsCi0rCQlkcml2ZXJfbmFtZSwgZGV2aWNlX2Rlc2NyaXB0aW9u KTsKLSsJdmFfZW5kKGFyZ3MpOwotK30KLSsKLSsvKioKLSsgKiBtYXJrX2hhcmR3YXJlX2Rpc2Fi bGVkKCkgLSBNYXJrIGEgZHJpdmVyIGFzIHJlbW92ZWQuCi0rICogQGRyaXZlcl9uYW1lOiBkcml2 ZXIgbmFtZQotKyAqIEBmbXQ6IGZvcm1hdCBmb3IgZGV2aWNlIGRlc2NyaXB0aW9uCi0rICogQC4u LjogYXJncyBmb3IgZGV2aWNlIGRlc2NyaXB0aW9uCi0rICoKLSsgKiBDYWxsZWQgdG8gbm90aWZ5 IHVzZXJzIHRoYXQgYSBkZXZpY2UncyBzdXBwb3J0IGhhcyBiZWVuIGNvbXBsZXRlbHkgZGlzYWJs ZWQKLSsgKiBhbmQgbm8gZnV0dXJlIHN1cHBvcnQgdXBkYXRlcyB3aWxsIG9jY3VyLiAgVGhpcyBk ZXZpY2UgY2Fubm90IGJlIHVzZWQgaW4gbmV3Ci0rICogcHJvZHVjdGlvbiBlbnZpcm9ubWVudHMs IGFuZCB1c2VycyBtdXN0IHJlcGxhY2UgdGhlIGRldmljZSBpbiBwcm9kdWN0aW9uCi0rICogc3lz dGVtcy4KLSsgKgotKyAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGUgZHJp dmVyJ3MgdXNhZ2UgY2FuIGJlIHRpZWQgdG8gYQotKyAqIHNwZWNpZmljIGhhcmR3YXJlIGRldmlj ZS4gIEZvciBleGFtcGxlLCBhIG5ldHdvcmsgZGV2aWNlIGRyaXZlciBsb2FkaW5nIG9uIGEKLSsg KiBzcGVjaWZpYyBkZXZpY2UgdGhhdCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZCBieSB0aGUgbWFu dWZhY3R1cmVyLgotKyAqCi0rICogUmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9u bHkuCi0rICovCi0rc3RhdGljIHZvaWQgX19tYXliZV91bnVzZWQgbWFya19oYXJkd2FyZV9kaXNh YmxlZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwgY2hhciAqZm10LCAuLi4pCi0rewotKwljaGFy IGRldmljZV9kZXNjcmlwdGlvbltERVZfREVTQ19MRU5dOwotKwl2YV9saXN0IGFyZ3M7Ci0rCi0r CXZhX3N0YXJ0KGFyZ3MsIGZtdCk7Ci0rCXZzbnByaW50ZihkZXZpY2VfZGVzY3JpcHRpb24sIERF Vl9ERVNDX0xFTiwgZm10LCBhcmdzKTsKLSsJcHJfY3JpdChSSF9ESVNBQkxFRF9IVywKLSsJCWRy aXZlcl9uYW1lLCBkZXZpY2VfZGVzY3JpcHRpb24pOwotKwl2YV9lbmQoYXJncyk7Ci0rfQotKwot KyNpZmRlZiBDT05GSUdfUENJCi0rLyoqCi0rICogcGNpX2h3X2RlcHJlY2F0ZWQoKSAtIE1hcmsg YSBQQ0kgZGV2aWNlIGRlcHJlY2F0ZWQuCi0rICogQGRldjogdGhlIFBDSSBkZXZpY2Ugc3RydWN0 dXJlIHRvIG1hdGNoIGFnYWluc3QKLSsgKgotKyAqIENhbGxlZCB0byBjaGVjayBpZiB0aGlzIEBk ZXYgaXMgaW4gdGhlIGxpc3Qgb2YgZGVwcmVjYXRlZCBkZXZpY2VzLgotKyAqCi0rICogUmVzZXJ2 ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCi0rICovCi0rc3RhdGljIHZvaWQgX19t YXliZV91bnVzZWQgcGNpX2h3X2RlcHJlY2F0ZWQoc3RydWN0IHBjaV9kZXYgKmRldikKLSt7Ci0r CWNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkICpyZXQgPSBwY2lfbWF0Y2hfaWQocmhfZGVwcmVj YXRlZF9wY2lfZGV2aWNlcywgZGV2KTsKLSsKLSsJaWYgKCFyZXQpCi0rCQlyZXR1cm47Ci0rCi0r CW1hcmtfaGFyZHdhcmVfZGVwcmVjYXRlZChkZXZfZHJpdmVyX3N0cmluZygmZGV2LT5kZXYpLCAi JTA0WDolMDRYIEAgJXMiLAotKwkJCQkgZGV2LT5kZXZpY2UsIGRldi0+dmVuZG9yLCBwY2lfbmFt ZShkZXYpKTsKLSt9Ci0rCi0rLyoqCi0rICogcGNpX2h3X3VubWFpbnRhaW5lZCgpIC0gTWFyayBh IFBDSSBkZXZpY2UgdW5tYWludGFpbmVkLgotKyAqIEBkZXY6IHRoZSBQQ0kgZGV2aWNlIHN0cnVj dHVyZSB0byBtYXRjaCBhZ2FpbnN0Ci0rICoKLSsgKiBDYWxsZWQgdG8gY2hlY2sgaWYgdGhpcyBA ZGV2IGlzIGluIHRoZSBsaXN0IG9mIHVubWFpbnRhaW5lZCBkZXZpY2VzLgotKyAqCi0rICogUmVz ZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCi0rICovCi0rc3RhdGljIHZvaWQg cGNpX2h3X3VubWFpbnRhaW5lZChzdHJ1Y3QgcGNpX2RldiAqZGV2KQotK3sKLSsJY29uc3Qgc3Ry dWN0IHBjaV9kZXZpY2VfaWQgKnJldCA9IHBjaV9tYXRjaF9pZChyaF91bm1haW50YWluZWRfcGNp X2RldmljZXMsIGRldik7Ci0rCi0rCWlmICghcmV0KQotKwkJcmV0dXJuOwotKwotKwltYXJrX2hh cmR3YXJlX3VubWFpbnRhaW5lZChkZXZfZHJpdmVyX3N0cmluZygmZGV2LT5kZXYpLCAiJTA0WDol MDRYIEAgJXMiLAotKwkJCQkgICBkZXYtPmRldmljZSwgZGV2LT52ZW5kb3IsIHBjaV9uYW1lKGRl dikpOwotK30KLSsKLSsvKioKLSsgKiBwY2lfaHdfZGlzYWJsZWQoKSAtIE1hcmsgYSBQQ0kgZGV2 aWNlIGRpc2FibGVkLgotKyAqIEBkZXY6IHRoZSBQQ0kgZGV2aWNlIHN0cnVjdHVyZSB0byBtYXRj aCBhZ2FpbnN0Ci0rICoKLSsgKiBDYWxsZWQgdG8gY2hlY2sgaWYgdGhpcyBAZGV2IGlzIGluIHRo ZSBsaXN0IG9mIGRpc2FibGVkIGRldmljZXMuCi0rICoKLSsgKiBSZXNlcnZlZCBmb3IgSW50ZXJu YWwgUmVkIEhhdCB1c2Ugb25seS4KLSsgKi8KLStzdGF0aWMgYm9vbCBfX21heWJlX3VudXNlZCBw Y2lfaHdfZGlzYWJsZWQoc3RydWN0IHBjaV9kZXYgKmRldikKLSt7Ci0rCWNvbnN0IHN0cnVjdCBw Y2lfZGV2aWNlX2lkICpyZXQgPSBwY2lfbWF0Y2hfaWQocmhfZGlzYWJsZWRfcGNpX2RldmljZXMs IGRldik7Ci0rCi0rCWlmICghcmV0KQotKwkJcmV0dXJuIGZhbHNlOwotKwotKwltYXJrX2hhcmR3 YXJlX2Rpc2FibGVkKGRldl9kcml2ZXJfc3RyaW5nKCZkZXYtPmRldiksICIlMDRYOiUwNFggQCAl cyIsCi0rCQkJCSAgIGRldi0+ZGV2aWNlLCBkZXYtPnZlbmRvciwgcGNpX25hbWUoZGV2KSk7Ci0r CXJldHVybiB0cnVlOwotK30KLSsjZW5kaWYKLSsKLSsvKioKLSsgKiBkcml2ZXJfdW5tYWludGFp bmVkKCkgLSBjaGVjayB0byBzZWUgaWYgYSBkcml2ZXIgaXMgdW5tYWludGFpbmVkCi0rICogQG1v ZHVsZV9uYW1lOiBtb2R1bGUgbmFtZQotKyAqCi0rICogQ2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0 aGF0IGEgZHJpdmVyIHdpbGwgbm8gbG9uZ2VyIGJlIHRlc3RlZCBvbiBhIHJvdXRpbmUKLSsgKiBi YXNpcyBhbmQgdGhlIGRyaXZlciBjb2RlIGlzIG5vIGxvbmdlciBiZWluZyB1cGRhdGVkLiAgUmVk IEhhdCBtYXkgZml4Ci0rICogc2VjdXJpdHktcmVsYXRlZCBhbmQgY3JpdGljYWwgaXNzdWVzLiAg U3VwcG9ydCBmb3IgdGhpcyBkcml2ZXIgd2lsbCBiZQotKyAqIGRpc2FibGVkIGluIGEgZnV0dXJl IG1ham9yIHJlbGVhc2UsIGFuZCB1c2VycyBzaG91bGQgcmVwbGFjZSBhbnkgYWZmZWN0ZWQKLSsg KiBkZXZpY2VzIGluIHByb2R1Y3Rpb24gc3lzdGVtcy4KLSsgKgotKyAqIFRoaXMgZnVuY3Rpb24g c2hvdWxkIGJlIHVzZWQgd2hlbiBhIGRyaXZlcidzIHVzYWdlIGNhbm5vdCBiZSB0aWVkIHRvIGEK LSsgKiBzcGVjaWZpYyBoYXJkd2FyZSBkZXZpY2UuICBGb3IgZXhhbXBsZSwgYSBuZXR3b3JrIGJv bmRpbmcgZHJpdmVyIG9yIGEgaGlnaGVyCi0rICogbGV2ZWwgc3RvcmFnZSBsYXllciBkcml2ZXIg dGhhdCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZCB1cHN0cmVhbS4KLSsgKgotKyAqIFJlc2VydmVk IGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgotKyAqLwotK3N0YXRpYyB2b2lkIF9fbWF5 YmVfdW51c2VkIGRyaXZlcl91bm1haW50YWluZWQoY29uc3QgY2hhciogbW9kdWxlX25hbWUpCi0r ewotKwlpbnQgaSA9IDA7Ci0rCi0rCXdoaWxlIChyaF91bm1haW50YWluZWRfZHJpdmVyc1tpXSkg ewotKwkJaWYgKHN0cmNtcChyaF91bm1haW50YWluZWRfZHJpdmVyc1tpXSwgbW9kdWxlX25hbWUp ID09IDApIHsKLSsJCQlwcl9jcml0KFJIX1VOTUFJTlRfRFIsIG1vZHVsZV9uYW1lKTsKLSsJCQly ZXR1cm47Ci0rCQl9Ci0rCQlpKys7Ci0rCX0KLSt9Ci0rCi0rLyoqCi0rICogZHJpdmVyX2RlcHJl Y2F0ZWQoKSAtIGNoZWNrIHRvIHNlZSBpZiBhIGRyaXZlciBpcyBkZXByZWNhdGVkCi0rICogQGRy aXZlcl9uYW1lOiBtb2R1bGUgbmFtZQotKyAqCi0rICogQ2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0 aGF0IHN1cHBvcnQgZm9yIHRoaXMgZHJpdmVyIGlzIHBsYW5uZWQgdG8gYmUKLSsgKiB1bm1haW50 YWluZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZSwgYW5kIHdpbGwgZXZlbnR1YWxseSBiZSBk aXNhYmxlZCBpbiBhCi0rICogZnV0dXJlIG1ham9yIHJlbGVhc2UuICBUaGlzIGRyaXZlciBzaG91 bGQgbm90IGJlIHVzZWQgaW4gbmV3IHByb2R1Y3Rpb24KLSsgKiBlbnZpcm9ubWVudHMgYW5kIHVz ZXJzIHNob3VsZCByZXBsYWNlIGFueSBhZmZlY3RlZCBkZXZpY2VzIGluIHByb2R1Y3Rpb24KLSsg KiBzeXN0ZW1zLgotKyAqCi0rICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgdXNlZCB3aGVuIGEg ZHJpdmVyJ3MgdXNhZ2UgY2Fubm90IGJlIHRpZWQgdG8gYQotKyAqIHNwZWNpZmljIGhhcmR3YXJl IGRldmljZS4gIEZvciBleGFtcGxlLCBhIG5ldHdvcmsgYm9uZGluZyBkcml2ZXIgb3IgYSBoaWdo ZXIKLSsgKiBsZXZlbCBzdG9yYWdlIGxheWVyIGRyaXZlciB0aGF0IGlzIG5vIGxvbmdlciBtYWlu dGFpbmVkIHVwc3RyZWFtLgotKyAqCi0rICogUmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQg dXNlIG9ubHkuCi0rICovCi0rc3RhdGljIHZvaWQgX19tYXliZV91bnVzZWQgZHJpdmVyX2RlcHJl Y2F0ZWQoY29uc3QgY2hhciogbW9kdWxlX25hbWUpCi0rewotKwlpbnQgaSA9IDA7Ci0rCi0rCXdo aWxlIChyaF9kZXByZWNhdGVkX2RyaXZlcnNbaV0pIHsKLSsJCWlmIChzdHJjbXAocmhfZGVwcmVj YXRlZF9kcml2ZXJzW2ldLCBtb2R1bGVfbmFtZSkgPT0gMCkgewotKwkJCXByX2NyaXQoUkhfREVQ UkVDQVRFRF9EUiwgbW9kdWxlX25hbWUpOwotKwkJCXJldHVybjsKLSsJCX0KLSsJCWkrKzsKLSsJ fQotK30KLSsKLSsvKiBUaGVyZSBpcyBubyBkcml2ZXJfZGlzYWJsZWQoKSBmdW5jdGlvbi4gIERp c2FibGVkIGRyaXZlcnMgYXJlIGNvbmZpZ3VyZWQgb2ZmIDspLiAqLwotKwotKy8qKgotKyAqIGlu aXRfZm5fdW5tYWludGFpbmVkIC0gY2hlY2sgdG8gc2VlIGlmIGEgYnVpbHQtaW4gZHJpdmVyIGlz IHVubWFpbnRhaW5lZC4KLSsgKiBAZm5fbmFtZTogbW9kdWxlJ3MgbW9kdWxlX2luaXQgZnVuY3Rp b24gbmFtZQotKyAqCi0rICogQ2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0aGF0IGEgYnVpbHQtaW4g ZHJpdmVyIHdpbGwgbm8gbG9uZ2VyIGJlIHRlc3RlZCBvbiBhIHJvdXRpbmUKLSsgKiBiYXNpcyBh bmQgdGhlIGJ1aWx0LWluIGRyaXZlciBjb2RlIGlzIG5vIGxvbmdlciBiZWluZyB1cGRhdGVkLiAg UmVkIEhhdCBtYXkgZml4Ci0rICogc2VjdXJpdHktcmVsYXRlZCBhbmQgY3JpdGljYWwgaXNzdWVz LiAgU3VwcG9ydCBmb3IgdGhpcyBidWlsdC1pbiBkcml2ZXIgd2lsbCBiZQotKyAqIGRpc2FibGVk IGluIGEgZnV0dXJlIG1ham9yIHJlbGVhc2UsIGFuZCB1c2VycyBzaG91bGQgcmVwbGFjZSBhbnkg YWZmZWN0ZWQKLSsgKiBkZXZpY2VzIGluIHByb2R1Y3Rpb24gc3lzdGVtcy4KLSsgKgotKyAqIFRo aXMgZnVuY3Rpb24gc2hvdWxkIGJlIHVzZWQgd2hlbiBhIGJ1aWx0LWluIGRyaXZlcidzIHVzYWdl IGNhbm5vdCBiZSB0aWVkIHRvIGEKLSsgKiBzcGVjaWZpYyBoYXJkd2FyZSBkZXZpY2UuICBGb3Ig ZXhhbXBsZSwgYSBuZXR3b3JrIGJvbmRpbmcgZHJpdmVyIG9yIGEgaGlnaGVyCi0rICogbGV2ZWwg c3RvcmFnZSBsYXllciBkcml2ZXIgdGhhdCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZCB1cHN0cmVh bS4KLSsgKgotKyAqIFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgotKyAq LwotKwotK3N0YXRpYyB2b2lkIF9fbWF5YmVfdW51c2VkIGluaXRfZm5fdW5tYWludGFpbmVkKGNo YXIqIGZuX25hbWUpCi0rewotKwlpbnQgaSA9IDA7Ci0rCi0rCXdoaWxlIChyaF91bm1haW50YWlu ZWRfaW5pdF9mbnNbaV0pIHsKLSsJCWlmIChzdHJjbXAocmhfdW5tYWludGFpbmVkX2luaXRfZm5z W2ldLCBmbl9uYW1lKSA9PSAwKSB7Ci0rCQkJcHJfY3JpdChSSF9VTk1BSU5UX0RSLCBmbl9uYW1l KTsKLSsJCQlyZXR1cm47Ci0rCQl9Ci0rCQlpKys7Ci0rCX0KLSt9Ci0rCi0rLyoqCi0rICogaW5p dF9mbl9kZXByZWNhdGVkKCkgLSBjaGVjayB0byBzZWUgaWYgYSBidWlsdC1pbiBkcml2ZXIgaXMg ZGVwcmVjYXRlZAotKyAqIEBmbl9uYW1lOiBtb2R1bGUncyBtb2R1bGVfaW5pdCBmdW5jdGlvbiBu YW1lCi0rICoKLSsgKiBDYWxsZWQgdG8gbm90aWZ5IHVzZXJzIHRoYXQgc3VwcG9ydCBmb3IgdGhp cyBidWlsdC1pbiBkcml2ZXIgaXMgcGxhbm5lZCB0byBiZQotKyAqIHVubWFpbnRhaW5lZCBpbiBh IGZ1dHVyZSBtYWpvciByZWxlYXNlLCBhbmQgd2lsbCBldmVudHVhbGx5IGJlIGRpc2FibGVkIGlu IGEKLSsgKiBmdXR1cmUgbWFqb3IgcmVsZWFzZS4gIFRoaXMgZHJpdmVyIHNob3VsZCBub3QgYmUg dXNlZCBpbiBuZXcgcHJvZHVjdGlvbgotKyAqIGVudmlyb25tZW50cyBhbmQgdXNlcnMgc2hvdWxk IHJlcGxhY2UgYW55IGFmZmVjdGVkIGRldmljZXMgaW4gcHJvZHVjdGlvbgotKyAqIHN5c3RlbXMu Ci0rICoKLSsgKiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBiZSB1c2VkIHdoZW4gYSBidWlsdC1pbiBk cml2ZXIncyB1c2FnZSBjYW5ub3QgYmUgdGllZCB0byBhCi0rICogc3BlY2lmaWMgaGFyZHdhcmUg ZGV2aWNlLiAgRm9yIGV4YW1wbGUsIGEgbmV0d29yayBib25kaW5nIGRyaXZlciBvciBhIGhpZ2hl cgotKyAqIGxldmVsIHN0b3JhZ2UgbGF5ZXIgZHJpdmVyIHRoYXQgaXMgbm8gbG9uZ2VyIG1haW50 YWluZWQgdXBzdHJlYW0uCi0rICoKLSsgKiBSZXNlcnZlZCBmb3IgSW50ZXJuYWwgUmVkIEhhdCB1 c2Ugb25seS4KLSsgKi8KLStzdGF0aWMgdm9pZCBfX21heWJlX3VudXNlZCBpbml0X2ZuX2RlcHJl Y2F0ZWQoY2hhciogZm5fbmFtZSkKLSt7Ci0rCWludCBpID0gMDsKLSsKLSsJd2hpbGUgKHJoX2Rl cHJlY2F0ZWRfaW5pdF9mbnNbaV0pIHsKLSsJCWlmIChzdHJjbXAocmhfZGVwcmVjYXRlZF9pbml0 X2Zuc1tpXSwgZm5fbmFtZSkgPT0gMCkgewotKwkJCXByX2NyaXQoUkhfREVQUkVDQVRFRF9EUiwg Zm5fbmFtZSk7Ci0rCQkJcmV0dXJuOwotKwkJfQotKwkJaSsrOwotKwl9Ci0rfQotKwotKy8qKgot KyAqIG1hcmtfdGVjaF9wcmV2aWV3KCkgLSBNYXJrIGRyaXZlciBvciBrZXJuZWwgc3Vic3lzdGVt IGFzICdUZWNoIFByZXZpZXcnCi0rICogQG1zZzogRHJpdmVyIG9yIGtlcm5lbCBzdWJzeXN0ZW0g bmFtZQotKyAqCi0rICogQ2FsbGVkIHRvIG1pbmltaXplIHRoZSBzdXBwb3J0IHN0YXR1cyBvZiBh IG5ldyBkcml2ZXIuICBUaGlzIGRvZXMgVEFJTlQgdGhlCi0rICoga2VybmVsLiAgQ2FsbGluZyB0 aGlzIGZ1bmN0aW9uIGluZGljYXRlcyB0aGF0IHRoZSBkcml2ZXIgb3Igc3Vic3lzdGVtIGhhcwot KyAqIGhhZCBsaW1pdGVkIHRlc3RpbmcgYW5kIGlzIG5vdCBtYXJrZWQgZm9yIGZ1bGwgc3VwcG9y dCB3aXRoaW4gdGhpcyBSSEVMCi0rICogbWlub3IgcmVsZWFzZS4gIFRoZSBuZXh0IFJIRUwgbWlu b3IgcmVsZWFzZSBtYXkgY29udGFpbiBmdWxsIHN1cHBvcnQgZm9yCi0rICogdGhpcyBkcml2ZXIu ICBSZWQgSGF0IGRvZXMgbm90IGd1YXJhbnRlZSB0aGF0IGJ1Z3MgcmVwb3J0ZWQgYWdhaW5zdCB0 aGlzCi0rICogZHJpdmVyIG9yIHN1YnN5c3RlbSB3aWxsIGJlIHJlc29sdmVkLgotKyAqCi0rICog UmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCi0rICovCi0rdm9pZCBfX21h eWJlX3VudXNlZCBtYXJrX3RlY2hfcHJldmlldyhjb25zdCBjaGFyICptc2csIHN0cnVjdCBtb2R1 bGUgKm1vZCkKLSt7Ci0rCWNvbnN0IGNoYXIgKnN0ciA9IE5VTEw7Ci0rCi0rCWlmIChtc2cpCi0r CQlzdHIgPSBtc2c7Ci0rI2lmZGVmIENPTkZJR19NT0RVTEVTCi0rCWVsc2UgaWYgKG1vZCkKLSsJ CXN0ciA9IG1vZC0+bmFtZTsKLSsjZW5kaWYKLSsKLSsJcHJfd2FybihSSF9URUNIX1BSRVZJRVcs IChzdHIgPyBzdHIgOiAia2VybmVsIikpOwotKwlhZGRfdGFpbnQoVEFJTlRfQVVYLCBMT0NLREVQ X1NUSUxMX09LKTsKLSsjaWZkZWYgQ09ORklHX01PRFVMRVMKLSsJaWYgKG1vZCkKLSsJCW1vZC0+ dGFpbnRzIHw9ICgxVSA8PCBUQUlOVF9BVVgpOwotKyNlbmRpZgotK30KLStFWFBPUlRfU1lNQk9M KG1hcmtfdGVjaF9wcmV2aWV3KTsKLSsKLSsvKioKLSsgKiBtYXJrX3BhcnRuZXJfc3VwcG9ydGVk KCkgLSBNYXJrIGRyaXZlciBvciBrZXJuZWwgc3Vic3lzdGVtIGFzICdQYXJ0bmVyIFN1cHBvcnRl ZCcKLSsgKiBAbXNnOiBEcml2ZXIgb3Iga2VybmVsIHN1YnN5c3RlbSBuYW1lCi0rICoKLSsgKiBD YWxsZWQgdG8gbWluaW1pemUgdGhlIHN1cHBvcnQgc3RhdHVzIG9mIGEgbmV3IGRyaXZlci4gIFRo aXMgZG9lcyBUQUlOVCB0aGUKLSsgKiBrZXJuZWwuICBDYWxsaW5nIHRoaXMgZnVuY3Rpb24gaW5k aWNhdGVzIHRoYXQgdGhlIGRyaXZlciBvciBzdWJzeXN0ZW0KLSsgKiBpcyBub3Qgc3VwcG9ydGVk IGRpcmVjdGx5IGJ5IFJlZCBIYXQgYnV0IGJ5IGEgcGFydG5lciBlbmdpbmVlci4KLSsgKgotKyAq IFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgotKyAqLwotK3ZvaWQgX19t YXliZV91bnVzZWQgbWFya19wYXJ0bmVyX3N1cHBvcnRlZChjb25zdCBjaGFyICptc2csIHN0cnVj dCBtb2R1bGUgKm1vZCkKLSt7Ci0rICAgICAgICBjb25zdCBjaGFyICpzdHIgPSBOVUxMOwotKwot KyAgICAgICAgaWYgKG1zZykKLSsgICAgICAgICAgICAgICAgc3RyID0gbXNnOwotKyNpZmRlZiBD T05GSUdfTU9EVUxFUwotKwllbHNlIGlmIChtb2QpCi0rCQlzdHIgPSBtb2QtPm5hbWU7Ci0rI2Vu ZGlmCi0rCi0rICAgICAgICBwcl93YXJuKFJIX1BBUlRORVJfU1VQUE9SVEVELCAoc3RyID8gc3Ry IDogImtlcm5lbCIpKTsKLSsgICAgICAgIGFkZF90YWludChUQUlOVF9QQVJUTkVSX1NVUFBPUlRF RCwgTE9DS0RFUF9TVElMTF9PSyk7Ci0rI2lmZGVmIENPTkZJR19NT0RVTEVTCi0rICAgICAgICBp ZiAobW9kKQotKyAgICAgICAgICAgICAgICBtb2QtPnRhaW50cyB8PSAoMVUgPDwgVEFJTlRfUEFS VE5FUl9TVVBQT1JURUQpOwotKyNlbmRpZgotK30KLStFWFBPUlRfU1lNQk9MKG1hcmtfcGFydG5l cl9zdXBwb3J0ZWQpOwotKwotKy8qCi0rICoKLSsgKiBGdW5jdGlvbnMgY2FsbGVkIGJ5ICdtYWlu JyBrZXJuZWwgY29kZS4KLSsgKgotKyAqLwotKwotKyNpZmRlZiBDT05GSUdfUENJCi0rLyoqCi0r ICogcGNpX3JoX2NoZWNrX3N0YXR1cyAtIGNoZWNrcyB0aGUgc3RhdHVzIG9mIGEgUENJIGRldmlj ZS4KLSsgKiBAcGNpX2RldjogUENJIGRldmljZSB0byBiZSBleGFtaW5lZAotKyAqCi0rICogVGhp cyBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgdGhlIFBDSSBkcml2ZXIgc3Vic3lzdGVtIHRvIGNoZWNr IHRoZSBzdGF0dXMgb2YgYQotKyAqIFBDSSBkZXZpY2UuCi0rICoKLSsgKiBUaGlzIGZ1bmN0aW9u IHJldHVybnMgdHJ1ZSBpZiB0aGUgUENJIGRldmljZSBpcyBkaXNhYmxlZCwgYW5kIGZhbHNlIG90 aGVyd2lzZS4KLSsgKgotKyAqIFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5 LgotKyAqLwotK2Jvb2wgX19tYXliZV91bnVzZWQgcGNpX3JoX2NoZWNrX3N0YXR1cyhzdHJ1Y3Qg cGNpX2RldiAqcGNpX2RldikKLSt7Ci0rCWlmIChwY2lfZGV2LT5kcml2ZXItPmRyaXZlci5vd25l ciAhPSBOVUxMKSB7Ci0rCQlpZiAoIXRlc3RfYml0KFRBSU5UX09PVF9NT0RVTEUsICZwY2lfZGV2 LT5kcml2ZXItPmRyaXZlci5vd25lci0+dGFpbnRzKSkgewotKwkJCXBjaV9od191bm1haW50YWlu ZWQocGNpX2Rldik7Ci0rCQkJcGNpX2h3X2RlcHJlY2F0ZWQocGNpX2Rldik7Ci0rCQkJcmV0dXJu IHBjaV9od19kaXNhYmxlZChwY2lfZGV2KTsKLSsJCX0KLSsJfQotKwlyZXR1cm4gZmFsc2U7Ci0r fQotKyNlbmRpZgotKwotKy8qKiBtb2R1bGVfcmhfY2hlY2tfc3RhdHVzIC0gY2hlY2tzIHRoZSBz dGF0dXMgb2YgYSBtb2R1bGUuCi0rICogQG1vZHVsZV9uYW1lOiBOYW1lIG9mIG1vZHVsZSB0byBi ZSBleGFtaW5lZAotKyAqCi0rICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgdGhlIG1vZHVs ZSBsb2FkaW5nIGNvZGUgdG8gY2hlY2sgdGhlIHN0YXR1cyBvZiBhCi0rICogbW9kdWxlLgotKyAq Ci0rICogUmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCi0rICovCi0rdm9p ZCBfX21heWJlX3VudXNlZCBtb2R1bGVfcmhfY2hlY2tfc3RhdHVzKGNvbnN0IGNoYXIgKiBtb2R1 bGVfbmFtZSkKLSt7Ci0rCWRyaXZlcl91bm1haW50YWluZWQobW9kdWxlX25hbWUpOwotKwlkcml2 ZXJfZGVwcmVjYXRlZChtb2R1bGVfbmFtZSk7Ci0rfQotKwotKy8qKgotKyAgKiBpbml0X3JoX2No ZWNrX3N0YXR1cyAtIGNoZWNrcyB0aGUgc3RhdHVzIG9mIGEgYnVpbHQtaW4gbW9kdWxlLgotKyAg KiBAZm5fbmFtZTogaW5pdCBmdW5jdGlvbiBvZiBtb2R1bGUgdG8gYmUgZXhhbWluZWQKLSsgICoK LSsgICogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgYnkgdGhlIGluaXQgY29kZSB0byBjaGVjayB0 aGUgc3RhdHVzIG9mIGEgYnVpbHQtaW4gbW9kdWxlLgotKyAgKiBXaGVuIGEgbW9kdWxlIGlzIGJ1 aWx0LWluLCB0aGUgbW9kdWxlX2luaXQoKSBmdW5jdGlvbiBpcyBjb252ZXJ0ZWQgaW50byBhbiBp bml0Y2FsbC4KLSsgICogVGhlIGluaXRjYWxsIGlzIHRoZSBjYWxsZWQgZHVyaW5nIGJvb3Qgd2l0 aCB0aGUgb3RoZXIgc3lzdGVtIGluaXRjYWxscy4KLSsgICoKLSsgICogUmVzZXJ2ZWQgZm9yIElu dGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCi0rICAqLwotK3ZvaWQgX19tYXliZV91bnVzZWQgaW5p dF9yaF9jaGVja19zdGF0dXMoY2hhciAqZm5fbmFtZSkKLSt7Ci0rCWluaXRfZm5fZGVwcmVjYXRl ZChmbl9uYW1lKTsKLSsJaW5pdF9mbl91bm1haW50YWluZWQoZm5fbmFtZSk7Ci0rfQotZGlmZiAt LWdpdCBhL2tlcm5lbC9yaF9tZXNzYWdlcy5oIGIva2VybmVsL3JoX21lc3NhZ2VzLmgKLW5ldyBm aWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMDAuLjZjNzU3YTJmZTRlMAotLS0tIC9k ZXYvbnVsbAotKysrIGIva2VybmVsL3JoX21lc3NhZ2VzLmgKLUBAIC0wLDAgKzEsMzM0IEBACi0r LyoKLSsgKiBXQVJOSU5HOiBUaGlzIGZpbGUgaXMgYXV0by1nZW5lcmF0ZWQgYnkgYW4gaW50ZXJu YWwgUmVkIEhhdCBzY3JpcHQgYW5kLAotKyAqIGluIGdlbmVyYWwsIHNob3VsZCBub3QgYmUgbW9k aWZpZWQgYnkgaGFuZC4KLSsgKiBTZWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9yZWRoYXQvcmhlbC9z cmMva2VybmVsL2hhcmR3YXJlLXJlbW92YWwtc3VwcG9ydAotKyAqLwotKwotKy8qCi0rICogVGhl IGZvbGxvd2luZyB0YWJsZXMgYXJlIHVzZWQgYnkgUmVkIEhhdCB0byBkZWZpbmUgd2hhdCBoYXJk d2FyZSBhbmQgZHJpdmVycwotKyAqIGFyZSB1bnN1cHBvcnRlZCwgb3IgaGF2ZSBsaW1pdGVkIHN1 cHBvcnQgaW4gUkhFTCBtYWpvciBhbmQgbWlub3IgcmVsZWFzZXMuCi0rICoKLSsgKiBHZW5lcmFs bHksIHRoZSBwcm9jZXNzIG9mIGRpc2FibGluZyBhIGRyaXZlciBvciBkZXZpY2UgaW4gUkhFTCBy ZXF1aXJlcyB0aGUKLSsgKiBkcml2ZXIgb3IgZGV2aWNlIHRvIGJlIG1hcmtlZCBhcyAnZGVwcmVj YXRlZCcgaW4gYWxsIGV4aXN0aW5nIHJlbGVhc2VzLCBhbmQKLSsgKiB0aGVuIGVpdGhlciAndW5t YWludGFpbmVkJyBvciAnZGlzYWJsZWQnIGluIGEgZnV0dXJlIHJlbGVhc2UuCi0rICoKLSsgKiBJ biBnZW5lcmFsLCBkZXByZWNhdGVkIGFuZCB1bm1haW50YWluZWQgZHJpdmVycyBjb250aW51ZSB0 byByZWNlaXZlIHNlY3VyaXR5Ci0rICogcmVsYXRlZCBmaXhlcyB1bnRpbCB0aGV5IGFyZSBkaXNh YmxlZC4KLSsgKi8KLSsgCi0rI2lmbmRlZiBfX1JIX01FU1NBR0VTX0gKLSsjZGVmaW5lIF9fUkhf TUVTU0FHRVNfSAotKwotKyNpbmNsdWRlIDxsaW51eC92ZXJzaW9uLmg+Ci0rI2luY2x1ZGUgPGxp bnV4L3BjaS5oPgotKwotKyNkZWZpbmUgREVWX0RFU0NfTEVOIDI1NgotKwotKyNkZWZpbmUgUkhf VU5NQUlOVF9IVyAiV2FybmluZzogVW5tYWludGFpbmVkIEhhcmR3YXJlIGlzIGRldGVjdGVkOiAl czolc1xuIgotKwotKyNkZWZpbmUgUkhfVU5NQUlOVF9EUiAiV2FybmluZzogVW5tYWludGFpbmVk IGRyaXZlciBpcyBkZXRlY3RlZDogJXNcbiIKLSsKLSsjZGVmaW5lIFJIX0RFUFJFQ0FURURfSFcg Ildhcm5pbmc6IERlcHJlY2F0ZWQgSGFyZHdhcmUgaXMgZGV0ZWN0ZWQ6ICVzOiVzICIgXAotKwkJ CSAid2lsbCBub3QgYmUgbWFpbnRhaW5lZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlICIgXAot KwkJCSAiYW5kIG1heSBiZSBkaXNhYmxlZFxuIgotKwotKyNkZWZpbmUgUkhfREVQUkVDQVRFRF9E UiAiV2FybmluZzogRGVwcmVjYXRlZCBEcml2ZXIgaXMgZGV0ZWN0ZWQ6ICVzIHdpbGwgIiBcCi0r CQkJICJub3QgYmUgbWFpbnRhaW5lZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNlIGFuZCAiIFwK LSsJCQkgIm1heSBiZSBkaXNhYmxlZFxuIgotKwotKyNkZWZpbmUgUkhfRElTQUJMRURfSFcgIldh cm5pbmc6IERpc2FibGVkIEhhcmR3YXJlIGlzIGRldGVjdGVkOiAlczolcyBpcyAiIFwKLSsJCSAg ICAgICAibm8gbG9uZ2VyIGVuYWJsZWQgaW4gdGhpcyByZWxlYXNlLlxuIgotKwotKyNkZWZpbmUg UkhfVEVDSF9QUkVWSUVXICJURUNIIFBSRVZJRVc6ICVzIG1heSBub3QgYmUgZnVsbHkgc3VwcG9y dGVkLlxuIiBcCi0rCQkJIlBsZWFzZSByZXZpZXcgcHJvdmlkZWQgZG9jdW1lbnRhdGlvbiBmb3Ig IiBcCi0rCQkJImxpbWl0YXRpb25zLlxuIgotKwotKyNkZWZpbmUgUkhfUEFSVE5FUl9TVVBQT1JU RUQgIldhcm5pbmc6ICVzIGlzIGEgUGFydG5lciBzdXBwb3J0ZWQgR1BMICIgXAotKwkJCSAgICAg Im1vZHVsZSBhbmQgbm90IHN1cHBvcnRlZCBkaXJlY3RseSBieSBSZWQgSGF0LlxuIgotKwotK3N0 YXRpYyBjb25zdCBjaGFyICpyaF9kZXByZWNhdGVkX2RyaXZlcnNbXSA9IHsKLSsJMCAgICAgLyog VGVybWluYXRpbmcgZW50cnkgKi8KLSt9OwotKwotK3N0YXRpYyBjb25zdCBjaGFyICpyaF9kZXBy ZWNhdGVkX2luaXRfZm5zW10gPSB7Ci0rCTAgICAgIC8qIFRlcm1pbmF0aW5nIGVudHJ5ICovCi0r fTsKLSsKLStzdGF0aWMgY29uc3QgY2hhciAqcmhfdW5tYWludGFpbmVkX2RyaXZlcnNbXSA9IHsK LSsJImFhY3JhaWQiLAotKwkiYWZfa2V5IiwKLSsJImFoY2lfc2VhdHRsZSIsCi0rCSJhaGNpX3hn ZW5lIiwKLSsJImFycF90YWJsZXMiLAotKwkiYm54MiIsCi0rCSJibngyZmMiLAotKwkiYm54Mmki LAotKwkiYm54MngiLAotKwkiY25pYyIsCi0rCSJkbDJrIiwKLSsJImUxMDAwIiwKLSsJImVidGFi bGVzIiwKLSsJImhkbGNfZnIiLAotKwkiaGlzaV9zYXNfbWFpbiIsCi0rCSJocHNhIiwKLSsJImlw Nl90YWJsZXMiLAotKwkiaXBfc2V0IiwKLSsJImlwX3RhYmxlcyIsCi0rCSJtcHRiYXNlIiwKLSsJ Im1wdHNhcyIsCi0rCSJtcHRzY3NpaCIsCi0rCSJtcHRzcGkiLAotKwkibXlyaTEwZ2UiLAotKwki bmV0eGVuX25pYyIsCi0rCSJuZnRfY29tcGF0IiwKLSsJIm5pY3BmIiwKLSsJIm5pY3ZmIiwKLSsJ Im52bWV0X2ZjIiwKLSsJIm52bWV0X3RjcCIsCi0rCSJ0ZWFtIiwKLSsJMCAgICAgLyogVGVybWlu YXRpbmcgZW50cnkgKi8KLSt9OwotKwotK3N0YXRpYyBjb25zdCBjaGFyICpyaF91bm1haW50YWlu ZWRfaW5pdF9mbnNbXSA9IHsKLSsJImJueDJfcGNpX2RyaXZlcl9pbml0IiwKLSsJImUxMDAwX2lu aXRfbW9kdWxlIiwKLSsJInJpb19kcml2ZXJfaW5pdCIsCi0rCSJocHNhX2luaXQiLAotKwkiZnVz aW9uX2luaXQiLAotKwkibXB0c2FzX2luaXQiLAotKwkiZnVzaW9uX2luaXQiLAotKwkibXB0c3Bp X2luaXQiLAotKwkibXlyaTEwZ2VfaW5pdF9tb2R1bGUiLAotKwkibmV0eGVuX2luaXRfbW9kdWxl IiwKLSsJImhkbGNfZnJfaW5pdCIsCi0rCSJudm1ldF9mY19pbml0X21vZHVsZSIsCi0rCSJudm1l dF90Y3BfaW5pdCIsCi0rCSJ0ZWFtX21vZHVsZV9pbml0IiwKLSsJImVidGFibGVzX2luaXQiLAot KwkiYXJwX3RhYmxlc19pbml0IiwKLSsJImlwX3RhYmxlc19pbml0IiwKLSsJImlwNl90YWJsZXNf aW5pdCIsCi0rCSJpcF9zZXRfaW5pdCIsCi0rCSJuZnRfY29tcGF0X21vZHVsZV9pbml0IiwKLSsJ Im5pY3ZmX2luaXRfbW9kdWxlIiwKLSsJIm5pY19pbml0X21vZHVsZSIsCi0rCSJpcHNlY19wZmtl eV9pbml0IiwKLSsJImFhY19pbml0IiwKLSsJImNuaWNfaW5pdCIsCi0rCSJibngyeF9pbml0IiwK LSsJImJueDJmY19tb2RfaW5pdCIsCi0rCSJibngyaV9tb2RfaW5pdCIsCi0rCSJhaGNpX3NlYXR0 bGVfcHJvYmUiLAotKwkieGdlbmVfYWhjaV9wcm9iZSIsCi0rCSJoaXNpX3Nhc19pbml0IiwKLSsJ MCAgICAgLyogVGVybWluYXRpbmcgZW50cnkgKi8KLSt9OwotKwotK3N0YXRpYyBjb25zdCBzdHJ1 Y3QgcGNpX2RldmljZV9pZCByaF9kZXByZWNhdGVkX3BjaV9kZXZpY2VzW10gPSB7Ci0rCXswfSAg ICAgLyogVGVybWluYXRpbmcgZW50cnkgKi8KLSt9OwotKwotK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg cGNpX2RldmljZV9pZCByaF9kaXNhYmxlZF9wY2lfZGV2aWNlc1tdID0gewotKwl7IDB4MTAxMSwg MHgwMDQ2LCAweDEwM2MsIDB4MTBjMiB9LAotKwl7IDB4MTAxMSwgMHgwMDQ2LCAweDkwMDUsIDB4 MDM2NCB9LAotKwl7IDB4MTAxMSwgMHgwMDQ2LCAweDkwMDUsIDB4MDM2NSB9LAotKwl7IDB4MTAx MSwgMHgwMDQ2LCAweDkwMDUsIDB4MTM2NCB9LAotKwl7IDB4MTAyOCwgMHgwMDAxLCAweDEwMjgs IDB4MDAwMSB9LAotKwl7IDB4MTAyOCwgMHgwMDAyLCAweDEwMjgsIDB4MDAwMiB9LAotKwl7IDB4 MTAyOCwgMHgwMDAyLCAweDEwMjgsIDB4MDBkMSB9LAotKwl7IDB4MTAyOCwgMHgwMDAyLCAweDEw MjgsIDB4MDBkOSB9LAotKwl7IDB4MTAyOCwgMHgwMDAzLCAweDEwMjgsIDB4MDAwMyB9LAotKwl7 IDB4MTAyOCwgMHgwMDA0LCAweDEwMjgsIDB4MDBkMCB9LAotKwl7IDB4MTAyOCwgMHgwMDBhLCAw eDEwMjgsIDB4MDEwNiB9LAotKwl7IDB4MTAyOCwgMHgwMDBhLCAweDEwMjgsIDB4MDExYiB9LAot Kwl7IDB4MTAyOCwgMHgwMDBhLCAweDEwMjgsIDB4MDEyMSB9LAotKwl7IDB4OTAwNSwgMHgwMjAw LCAweDkwMDUsIDB4MDIwMCB9LAotKwl7IDB4OTAwNSwgMHgwMjgzLCAweDkwMDUsIDB4MDI4MyB9 LAotKwl7IDB4OTAwNSwgMHgwMjg0LCAweDkwMDUsIDB4MDI4NCB9LAotKwl7IDB4OTAwNSwgMHgw Mjg1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHg5MDA1LCAweDAyODUsIDB4MTAx NCwgMHgwMkYyIH0sCi0rCXsgMHg5MDA1LCAweDAyODUsIDB4MTAxNCwgMHgwMzEyIH0sCi0rCXsg MHg5MDA1LCAweDAyODUsIDB4MTAyOCwgUENJX0FOWV9JRCB9LAotKwl7IDB4OTAwNSwgMHgwMjg1 LCAweDEwMjgsIDB4MDI4NyB9LAotKwl7IDB4OTAwNSwgMHgwMjg1LCAweDEwMjgsIDB4MDI5MSB9 LAotKwl7IDB4OTAwNSwgMHgwMjg1LCAweDEwM0MsIDB4MzIyNyB9LAotKwl7IDB4OTAwNSwgMHgw Mjg1LCAweDE3YWEsIFBDSV9BTllfSUQgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHgxN2FhLCAw eDAyODYgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHgxN2FhLCAweDAyODcgfSwKLSsJeyAweDkw MDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyODUgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1 LCAweDAyODYgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyODcgfSwKLSsJeyAw eDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyODggfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5 MDA1LCAweDAyODkgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOGEgfSwKLSsJ eyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOGIgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwg MHg5MDA1LCAweDAyOGUgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOGYgfSwK LSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOTAgfSwKLSsJeyAweDkwMDUsIDB4MDI4 NSwgMHg5MDA1LCAweDAyOTEgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOTIg fSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOTMgfSwKLSsJeyAweDkwMDUsIDB4 MDI4NSwgMHg5MDA1LCAweDAyOTQgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAy OTYgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOTcgfSwKLSsJeyAweDkwMDUs IDB4MDI4NSwgMHg5MDA1LCAweDAyOTggfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAw eDAyOTkgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyOWEgfSwKLSsJeyAweDkw MDUsIDB4MDI4NSwgMHg5MDA1LCAweDAyYTQgfSwKLSsJeyAweDkwMDUsIDB4MDI4NSwgMHg5MDA1 LCAweDAyYTUgfSwKLSsJeyAweDkwMDUsIDB4MDI4NiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDEwMTQsIDB4OTU0MCB9LAotKwl7IDB4OTAwNSwgMHgw Mjg2LCAweDEwMTQsIDB4OTU4MCB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDI4 YyB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDI4ZCB9LAotKwl7IDB4OTAwNSwg MHgwMjg2LCAweDkwMDUsIDB4MDI5YiB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4 MDI5YyB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDI5ZCB9LAotKwl7IDB4OTAw NSwgMHgwMjg2LCAweDkwMDUsIDB4MDI5ZSB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUs IDB4MDI5ZiB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDJhMCB9LAotKwl7IDB4 OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDJhMSB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkw MDUsIDB4MDJhMiB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDJhMyB9LAotKwl7 IDB4OTAwNSwgMHgwMjg2LCAweDkwMDUsIDB4MDJhNiB9LAotKwl7IDB4OTAwNSwgMHgwMjg2LCAw eDkwMDUsIDB4MDgwMCB9LAotKwl7IDB4OTAwNSwgMHgwMjg3LCAweDkwMDUsIDB4MDgwMCB9LAot Kwl7IDB4OTAwNSwgMHgwMjg4LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxOWEy LCAweDAyMjIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE5YTIsIDB4MDcxMiwg UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTlhMiwgMHgyMTIsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKLSsJeyAweDE5YTIsIDB4NzAyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCi0rCXsgMHgxOWEyLCAweDcwMywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4 MTlhMiwgMHgwNzAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxOWEyLCAweDAy MTEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE5YTIsIDB4MDcxMCwgUENJX0FO WV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTlhMiwgMHgwMjIxLCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lEIH0sCi0rCXsgMHgxOWEyLCAweGUyMjAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwK LSsJeyAweDEwZGYsIDB4MWFlNSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBk ZiwgMHhlMTAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGUxMzEs IFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZTE4MCwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhlMjYwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lEIH0sCi0rCXsgMHgxMGRmLCAweGYwOTUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJ eyAweDEwZGYsIDB4ZjA5OCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwg MHhmMGExLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGYwYTUsIFBD SV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZjBkMSwgUENJX0FOWV9JRCwg UENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmMGQ1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCi0rCXsgMHgxMGRmLCAweGYwZTEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAw eDEwZGYsIDB4ZjBlNSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhm MGY1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGYwZjYsIFBDSV9B TllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZjBmNywgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmMTgwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s Ci0rCXsgMHgxMGRmLCAweGY3MDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEw ZGYsIDB4ZjgwMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmOTAw LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGY5ODAsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZmEwMCwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmYjAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0r CXsgMHgxMGRmLCAweGZjMDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYs IDB4ZmMxMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmYzIwLCBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGZjNTAsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZmQwMCwgUENJX0FOWV9JRCwgUENJX0FOWV9J RCB9LAotKwl7IDB4MTBkZiwgMHhmZDExLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsg MHgxMGRmLCAweGZkMTIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4 ZmUwMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmZTA1LCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGZlMTEsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZmUxMiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAotKwl7IDB4MTlhMiwgMHgwNzA0LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgx OWEyLCAweDA3MTQsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZTIw OCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHhlMjY4LCBQQ0lfQU5Z X0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDAwLCAweDAwNjAsIFBDSV9BTllfSUQsIFBDSV9B TllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA3OCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAot Kwl7IDB4MTAwMCwgMHgwMDdDLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDAw LCAweDA0MTEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDQxMywg UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTAyOCwgMHgwMDE1LCBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDEwMDIsIFBDSV9BTllfSUQsIFBDSV9BTllf SUQgfSwKLSsJeyAweDE1QjMsIDB4NjM0MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7 IDB4MTVCMywgMHg2MzRBLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAw eDYzNTQsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE1QjMsIDB4NjM2OCwgUENJ X0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywgMHg2MzcyLCBQQ0lfQU5ZX0lELCBQ Q0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDY3MzIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQg fSwKLSsJeyAweDE1QjMsIDB4NjczQywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4 MTVCMywgMHg2NzQ2LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDY3 NTAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE1QjMsIDB4Njc1QSwgUENJX0FO WV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywgMHg2NzY0LCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDY3NkUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwK LSsJeyAweDE1QjMsIDB4MTAwMywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVC MywgMHgxMDA0LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDEwMDUs IFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE1QjMsIDB4MTAwNiwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywgMHgxMDA3LCBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lEIH0sCi0rCXsgMHgxNUIzLCAweDEwMDgsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJ eyAweDE1QjMsIDB4MTAwOSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywg MHgxMDBhLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDEwMGIsIFBD SV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDE1QjMsIDB4MTAwYywgUENJX0FOWV9JRCwg UENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywgMHgxMDBkLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCi0rCXsgMHgxNUIzLCAweDEwMGUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAw eDE1QjMsIDB4MTAwZiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTVCMywgMHgx MDEwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNUIzLCAweDEwMjcsIFBDSV9B TllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA2NCwgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDY1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s Ci0rCXsgMHgxMDAwLCAweDAwNzAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEw MDAsIDB4MDA3MiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDc0 LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDAwLCAweDAwNzYsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA3NywgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDdFLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0r CXsgMHgxMDc3LCAweDI0MjIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwNzcs IDB4MjQzMiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTA3NywgMHg1NDIyLCBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDc3LCAweDU0MzIsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKLSsJeyAweDEwNzcsIDB4ODAwMSwgUENJX0FOWV9JRCwgUENJX0FOWV9J RCB9LAotKwl7IDB4MTA3NywgMHg4MDIxLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsg MHgxMDc3LCAweDgwNDQsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwNzcsIDB4 ODQzMiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTA3NywgMHhGMDAwLCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDc3LCAweDgwMjIsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKLSsJeyAweDEwNzcsIDB4ODAzMiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAotKwl7IDB4MTA3NywgMHg4MDQyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXswfSAg ICAgLyogVGVybWluYXRpbmcgZW50cnkgKi8KLSt9OwotKwotK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg cGNpX2RldmljZV9pZCByaF91bm1haW50YWluZWRfcGNpX2RldmljZXNbXSA9IHsKLSsJeyAweDEw ZGYsIDB4ZTIyMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTBkZiwgMHgwNzI0 LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMGRmLCAweGUyMDAsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYsIDB4ZjAxMSwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAotKwl7IDB4MTBkZiwgMHhmMDE1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0r CXsgMHgxMGRmLCAweGYxMDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwZGYs IDB4ZmM0MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDViLCBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDAwLCAweDAwNzEsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA3MywgUENJX0FOWV9JRCwgUENJX0FOWV9J RCB9LAotKwl7IDB4MTAwMCwgMHgwMDc5LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsg MHgxMDAwLCAweDAwNkUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4 MDA4MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDgxLCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDAwLCAweDAwODIsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA4MywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAotKwl7IDB4MTAwMCwgMHgwMDg0LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgx MDAwLCAweDAwODUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwMDAsIDB4MDA4 NiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTAwMCwgMHgwMDg3LCBQQ0lfQU5Z X0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxNzdkLCAweGEwMWUsIFBDSV9BTllfSUQsIFBDSV9B TllfSUQgfSwKLSsJeyAweDE3N2QsIDB4YTAzNCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAot Kwl7IDB4MTc3ZCwgMHgwMDExLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxMDc3 LCAweDIwMzEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKLSsJeyAweDEwNzcsIDB4MjUzMiwg UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7IDB4MTA3NywgMHg4MDMxLCBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lEIH0sCi0rCXsgMHgxOTI0LCAweDA4MDMsIFBDSV9BTllfSUQsIFBDSV9BTllf SUQgfSwKLSsJeyAweDE5MjQsIDB4MDgxMywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAotKwl7 MH0gICAgIC8qIFRlcm1pbmF0aW5nIGVudHJ5ICovCi0rfTsKLSsKLSsjZW5kaWYgLyogX19SSF9N RVNTQUdFU19IICovCi1kaWZmIC0tZ2l0IGEva2VybmVsL3JoX3dhaXZlZC5jIGIva2VybmVsL3Jo X3dhaXZlZC5jCi1uZXcgZmlsZSBtb2RlIDEwMDY0NAotaW5kZXggMDAwMDAwMDAwMDAwLi4yMDk2 NmY3YzcyNzcKLS0tLSAvZGV2L251bGwKLSsrKyBiL2tlcm5lbC9yaF93YWl2ZWQuYwotQEAgLTAs MCArMSwxNDcgQEAKLSsvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAqLwotKy8q Ci0rICoga2VybmVsL3JoX3dhaXZlZC5jCi0rICoKLSsgKiByaF93YWl2ZWQgY21kbGluZSBwYXJh bWV0ZXIgc3VwcG9ydC4KLSsgKgotKyAqIENvcHlyaWdodCAoQykgMjAyNCwgUmVkIEhhdCwgSW5j LiAgUmljYXJkbyBSb2JhaW5hIDxycm9iYWluYUByZWRoYXQuY29tPgotKyAqLwotKyNpbmNsdWRl IDxsaW51eC90eXBlcy5oPgotKyNpbmNsdWRlIDxsaW51eC9pbml0Lmg+Ci0rI2luY2x1ZGUgPGxp bnV4L3ByaW50ay5oPgotKyNpbmNsdWRlIDxsaW51eC9zdHJpbmcuaD4KLSsjaW5jbHVkZSA8bGlu dXgvcGFuaWMuaD4KLSsjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Ci0rI2luY2x1ZGUgPGxpbnV4 L2tlcm5lbC5oPgotKyNpbmNsdWRlIDxsaW51eC9yaF9mbGFncy5oPgotKyNpbmNsdWRlIDxsaW51 eC9yaF93YWl2ZWQuaD4KLSsKLSsvKgotKyAqICogUkhfSU5TRVJUX1dBSVZFRF9JVEVNCi0rICog ICBUaGlzIG1hY3JvIGlzIGludGVuZGVkIHRvIGJlIHVzZWQgdG8gaW5zZXJ0IGl0ZW1zIGludG8g dGhlCi0rICogICByaF93YWl2ZWRfbGlzdCBhcnJheS4gSXQgZXhwZWN0cyB0byBnZXQgYW4gaXRl bSBmcm9tCi0rICogICBlbnVtIHJoX3dhaXZlZF9pdGVtcyBhcyBpdHMgZmlyc3QgYXJndW1lbnQs IGFuZCBhIHN0cmluZwotKyAqICAgaG9sZGluZyB0aGUgZmVhdHVyZSBuYW1lIGFzIGl0cyBzZWNv bmQgYXJndW1lbnQuCi0rICoKLSsgKiAgIFRoZSBmZWF0dXJlIG5hbWUgaXMgYWxzbyB1dGlsaXpl ZCBhcyB0aGUgdG9rZW4gZm9yIHRoZQotKyAqICAgYm9vdCBwYXJhbWV0ZXIgcGFyc2VyLgotKyAq Ci0rICogICBFeGFtcGxlIHVzYWdlOgotKyAqICAgc3RydWN0IHJoX3dhaXZlZF9pdGVtIGZvb1tS SF9XQUlWRURfRkVBVF9JVEVNU10gPSB7Ci0rICogICAgIFJIX0lOU0VSVF9XQUlWRURfSVRFTShG T09fRkVBVCwgImZvb19mZWF0X3Nob3J0X3N0ciIsICJhbGlhcyIsIFJIX1dBSVZFRF9GRUFUKSwK LSsgKiAgIH07Ci0rICovCi0rI2RlZmluZSBSSF9JTlNFUlRfV0FJVkVEX0lURU0oZW51bV9pdGVt LCBpdGVtLCBpdGVtX2FsdCwgY2xhc3MpICAgICAgICAgICAgICAgIFwKLSsgICAgICAgWyhlbnVt X2l0ZW0pXSA9IHsgLm5hbWUgPSAoaXRlbSksIC5hbGlhcyA9IChpdGVtX2FsdCksICAgICAgICAg IFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgLnR5cGUgPSAoY2xhc3MpLCAud2FpdmVkID0g MCwgfQotKwotKy8qIEluZGljYXRlcyBpZiB0aGUgcmhfZmxhZyAncmhfd2FpdmVkJyBzaG91bGQg YmUgYWRkZWQuICovCi0rYm9vbCBfX2luaXRkYXRhIGFkZF9yaF9mbGFnID0gZmFsc2U7Ci0rCi0r dHlwZWRlZiBlbnVtIHsKLSsgICAgICAgUkhfV0FJVkVEX0ZFQVQsCi0rICAgICAgIFJIX1dBSVZF RF9DVkUsCi0rICAgICAgIFJIX1dBSVZFRF9BTlkKLSt9IHJoX3dhaXZlZF90OwotKwotK3N0cnVj dCByaF93YWl2ZWRfaXRlbSB7Ci0rICAgICAgIGNoYXIgKm5hbWUsICphbGlhczsKLSsgICAgICAg cmhfd2FpdmVkX3QgdHlwZTsKLSsgICAgICAgdW5zaWduZWQgaW50IHdhaXZlZDsKLSsKLSt9Owot KwotKy8qIEFsd2F5cyB1c2UgdGhlIG1hcmNvIFJIX0lOU0VSVF9XQUlWRUQgdG8gaW5zZXJ0IGl0 ZW1zIHRvIHRoaXMgYXJyYXkuICovCi0rc3RydWN0IHJoX3dhaXZlZF9pdGVtIHJoX3dhaXZlZF9s aXN0W1JIX1dBSVZFRF9JVEVNU10gPSB7Ci0rfTsKLSsKLSsvKgotKyAqIGlzX3JoX3dhaXZlZCgp IC0gQ2hlY2tzIGlmIGEgZ2l2ZW4gaXRlbSBoYXMgYmVlbiBtYXJrZWQgYXMgd2FpdmVkLgotKyAq Ci0rICogQGl0ZW06IHdhaXZlZCBpdGVtLgotKyAqLwotK19faW5saW5lX18gYm9vbCBpc19yaF93 YWl2ZWQoZW51bSByaF93YWl2ZWRfaXRlbXMgaXRlbSkKLSt7Ci0rCXJldHVybiAhIXJoX3dhaXZl ZF9saXN0W2l0ZW1dLndhaXZlZDsKLSt9Ci0rRVhQT1JUX1NZTUJPTChpc19yaF93YWl2ZWQpOwot KwotK3N0YXRpYyB2b2lkIF9faW5pdCByaF93YWl2ZWRfcGFyc2VyKGNoYXIgKnMsIHJoX3dhaXZl ZF90IHR5cGUpCi0rewotKwlpbnQgaTsKLSsJY2hhciAqdG9rZW47Ci0rCi0rCXByX2luZm8oS0VS Tl9DT05UICJyaF93YWl2ZWQ6ICIpOwotKwotKwlpZiAoIXMpIHsKLSsJCWZvciAoaSA9IDA7IGkg PCBSSF9XQUlWRURfSVRFTVM7IGkrKykgewotKwkJCWlmICh0eXBlICE9IFJIX1dBSVZFRF9BTlkg JiYgcmhfd2FpdmVkX2xpc3RbaV0udHlwZSAhPSB0eXBlKQotKwkJCQljb250aW51ZTsKLSsKLSsJ CQlyaF93YWl2ZWRfbGlzdFtpXS53YWl2ZWQgPSAxOwotKwkJCXByX2luZm8oS0VSTl9DT05UICIl cyVzIiwgcmhfd2FpdmVkX2xpc3RbaV0ubmFtZSwKLSsJCQkJaSA8IFJIX1dBSVZFRF9JVEVNUyAt IDEgPyAiICIgOiAiXG4iKTsKLSsJCX0KLSsKLSsJCWFkZF9yaF9mbGFnID0gdHJ1ZTsKLSsJCXJl dHVybjsKLSsJfQotKwotKwl3aGlsZSAoKHRva2VuID0gc3Ryc2VwKCZzLCAiLCIpKSAhPSBOVUxM KSB7Ci0rCQlmb3IgKGkgPSAwOyBpIDwgUkhfV0FJVkVEX0lURU1TOyBpKyspIHsKLSsJCQljaGFy ICphbGlhcyA9IHJoX3dhaXZlZF9saXN0W2ldLmFsaWFzOwotKwotKwkJCWlmICh0eXBlICE9IFJI X1dBSVZFRF9BTlkgJiYgcmhfd2FpdmVkX2xpc3RbaV0udHlwZSAhPSB0eXBlKQotKwkJCQljb250 aW51ZTsKLSsKLSsJCQlpZiAoIXN0cmNtcCh0b2tlbiwgcmhfd2FpdmVkX2xpc3RbaV0ubmFtZSkg fHwKLSsJCQkgICAgKGFsaWFzICYmICFzdHJjbXAodG9rZW4sIGFsaWFzKSkpIHsKLSsJCQkJcmhf d2FpdmVkX2xpc3RbaV0ud2FpdmVkID0gMTsKLSsJCQkJcHJfaW5mbyhLRVJOX0NPTlQgIiVzICIs IHJoX3dhaXZlZF9saXN0W2ldLm5hbWUpOwotKwkJCX0KLSsJCX0KLSsJfQotKwotKwlwcl9pbmZv KEtFUk5fQ09OVCAiXG4iKTsKLSsJYWRkX3JoX2ZsYWcgPSB0cnVlOwotK30KLSsKLStzdGF0aWMg aW50IF9faW5pdCByaF93YWl2ZWRfc2V0dXAoY2hhciAqcykKLSt7Ci0rCS8qCi0rCSAqIG9yaWdp bmFsbHksIGlmIG5vIHN0cmluZyB3YXMgcGFzc2VkIHRvIHRoZSBjbWRsaW5lIG9wdGlvbgotKwkg KiBhbGwgbGlzdGVkIGZlYXR1cmVzIHdvdWxkIGJlIHdhaXZlZCwgc28gd2Uga2VlcCB0aGF0IHNh bWUKLSsJICogY29tcHJvbWlzZSB3aXRoIHRoZSBuZXcgY29udHJhY3QuCi0rCSAqLwotKwlpZiAo IXMgfHwgIXN0cmNtcChzLCAiZmVhdHVyZXMiKSkgewotKwkJcmhfd2FpdmVkX3BhcnNlcihOVUxM LCBSSF9XQUlWRURfRkVBVCk7Ci0rCQlyZXR1cm4gMDsKLSsJfQotKwotKwkvKiB3YWl2ZSBhbGwg cG9zc2libGUgbWl0aWdhdGlvbnMgaW4gdGhlIGxpc3QgKi8KLSsJaWYgKCFzdHJjbXAocywgImN2 ZXMiKSkgewotKwkJcmhfd2FpdmVkX3BhcnNlcihOVUxMLCBSSF9XQUlWRURfQ1ZFKTsKLSsJCXJl dHVybiAwOwotKwl9Ci0rCi0rCS8qIG90aGVyd2lzZSwganVzdCBkZWFsIHdpdGggdGhlIGVudW1l cmF0ZWQgd2FpdmUgbGlzdCAqLwotKwlyaF93YWl2ZWRfcGFyc2VyKHMsIFJIX1dBSVZFRF9BTlkp OwotKwotKwlyZXR1cm4gMDsKLSt9Ci0rZWFybHlfcGFyYW0oInJoX3dhaXZlZCIsIHJoX3dhaXZl ZF9zZXR1cCk7Ci0rCi0rLyoKLSsgKiByaF9mbGFncyBpcyBpbml0aWFsaXplZCBhdCBzdWJzeXNf aW5pdGNhbGwsIGNhbGxpbmcgcmhfYWRkX2ZsYWcoKQotKyAqIGZyb20gcmhfd2FpdmVkX3NldHVw KCkgd291bGQgcmVzdWx0IGluIGEgY2FuJ3QgYm9vdCBzaXR1YXRpb24uCi0rICogRGVmZmVyaW5n IHRoZSBpbmNsdXNpb24gJ3JoX3dhaXZlZCcgcmhfZmxhZyB0byBsYXRlX2luaXRjYWxsIHRvCi0r ICogYXZvaWQgdGhpcyBpc3N1ZS4KLSsgKi8KLStzdGF0aWMgaW50IF9faW5pdCBfX2FkZF9yaF9m bGFnKHZvaWQpCi0rewotKwlpZiAoYWRkX3JoX2ZsYWcpCi0rCQlyaF9hZGRfZmxhZygicmhfd2Fp dmVkIik7Ci0rCi0rCXJldHVybiAwOwotK30KLStsYXRlX2luaXRjYWxsKF9fYWRkX3JoX2ZsYWcp OwotZGlmZiAtLWdpdCBhL3NjcmlwdHMvTWFrZWZpbGUubGliIGIvc2NyaXB0cy9NYWtlZmlsZS5s aWIKLWluZGV4IDBhNGZkZDhiZDk3NS4uZGNiMTJkYWQ0MTlmIDEwMDY0NAotLS0tIGEvc2NyaXB0 cy9NYWtlZmlsZS5saWIKLSsrKyBiL3NjcmlwdHMvTWFrZWZpbGUubGliCi1AQCAtMjA3LDcgKzIw NywxMCBAQCBvYmp0b29sLWFyZ3MtJChDT05GSUdfU1RBQ0tfVkFMSURBVElPTikJCQkrPSAtLXN0 YWNrdmFsCi0gb2JqdG9vbC1hcmdzLSQoQ09ORklHX0hBVkVfU1RBVElDX0NBTExfSU5MSU5FKQkJ Kz0gLS1zdGF0aWMtY2FsbAotIG9ianRvb2wtYXJncy0kKENPTkZJR19IQVZFX1VBQ0NFU1NfVkFM SURBVElPTikJCSs9IC0tdWFjY2VzcwotIG9ianRvb2wtYXJncy0kKG9yICQoQ09ORklHX0dDT1Zf S0VSTkVMKSwkKENPTkZJR19LQ09WKSkJKz0gLS1uby11bnJlYWNoYWJsZQotKyMgUkhFTC1vbmx5 OiBkb24ndCBlbmZvcmNlIE9CSlRPT0xfV0VSUk9SIGZvciBvdXQgb2YgdHJlZSBtb2R1bGVzCi0r aWZlcSAoJChLQlVJTERfRVhUTU9EKSwpCi0gb2JqdG9vbC1hcmdzLSQoQ09ORklHX09CSlRPT0xf V0VSUk9SKQkJCSs9IC0td2Vycm9yCi0rZW5kaWYKLSAKLSBvYmp0b29sLWFyZ3MgPSAkKG9ianRv b2wtYXJncy15KQkJCQkJXAotIAkkKGlmICQoZGVsYXktb2JqdG9vbCksIC0tbGluaykJCQkJCVwK LWRpZmYgLS1naXQgYS9zY3JpcHRzL21vZC9tb2Rwb3N0LmMgYi9zY3JpcHRzL21vZC9tb2Rwb3N0 LmMKLWluZGV4IGE3YjcyYTgxZDI0OC4uOWI2MmVlMDc4NzM0IDEwMDY0NAotLS0tIGEvc2NyaXB0 cy9tb2QvbW9kcG9zdC5jCi0rKysgYi9zY3JpcHRzL21vZC9tb2Rwb3N0LmMKLUBAIC0yNyw2ICsy Nyw3IEBACi0gI2luY2x1ZGUgPHhhbGxvYy5oPgotICNpbmNsdWRlICJtb2Rwb3N0LmgiCi0gI2lu Y2x1ZGUgIi4uLy4uL2luY2x1ZGUvbGludXgvbGljZW5zZS5oIgotKyNpbmNsdWRlICIuLi8uLi9p bmNsdWRlL2dlbmVyYXRlZC91YXBpL2xpbnV4L3ZlcnNpb24uaCIKLSAKLSAjZGVmaW5lIE1PRFVM RV9OU19QUkVGSVggIm1vZHVsZToiCi0gCi1AQCAtMjA2Niw2ICsyMDY3LDEyIEBAIHN0YXRpYyB2 b2lkIHdyaXRlX2J1ZihzdHJ1Y3QgYnVmZmVyICpiLCBjb25zdCBjaGFyICpmbmFtZSkKLSAJfQot IH0KLSAKLStzdGF0aWMgdm9pZCBhZGRfcmhlbHZlcnNpb24oc3RydWN0IGJ1ZmZlciAqYiwgc3Ry dWN0IG1vZHVsZSAqbW9kKQotK3sKLSsJYnVmX3ByaW50ZihiLCAiTU9EVUxFX0lORk8ocmhlbHZl cnNpb24sIFwiJWQuJWRcIik7XG4iLCBSSEVMX01BSk9SLAotKwkJICAgUkhFTF9NSU5PUik7Ci0r fQotKwotIHN0YXRpYyB2b2lkIHdyaXRlX2lmX2NoYW5nZWQoc3RydWN0IGJ1ZmZlciAqYiwgY29u c3QgY2hhciAqZm5hbWUpCi0gewotIAljaGFyICp0bXA7Ci1AQCAtMjE1MCw2ICsyMTU3LDcgQEAg c3RhdGljIHZvaWQgd3JpdGVfbW9kX2NfZmlsZShzdHJ1Y3QgbW9kdWxlICptb2QpCi0gCX0KLSAK LSAJYWRkX3NyY3ZlcnNpb24oJmJ1ZiwgbW9kKTsKLSsJYWRkX3JoZWx2ZXJzaW9uKCZidWYsIG1v ZCk7Ci0gCi0gCXJldCA9IHNucHJpbnRmKGZuYW1lLCBzaXplb2YoZm5hbWUpLCAiJXMubW9kLmMi LCBtb2QtPm5hbWUpOwotIAlpZiAocmV0ID49IHNpemVvZihmbmFtZSkpIHsKLWRpZmYgLS1naXQg YS9zY3JpcHRzL3RhZ3Muc2ggYi9zY3JpcHRzL3RhZ3Muc2gKLWluZGV4IDI0MzM3MzY4M2Y5OC4u MmFmZmQ1ZTU4ZWU4IDEwMDc1NQotLS0tIGEvc2NyaXB0cy90YWdzLnNoCi0rKysgYi9zY3JpcHRz L3RhZ3Muc2gKLUBAIC0xNiw2ICsxNiw4IEBAIGZpCi0gaWdub3JlPSIkKGVjaG8gIiRSQ1NfRklO RF9JR05PUkUiIHwgc2VkICdzfFxcfHxnJyApIgotICMgdGFncyBhbmQgY3Njb3BlIGZpbGVzIHNo b3VsZCBhbHNvIGlnbm9yZSBNT0RWRVJTSU9OICoubW9kLmMgZmlsZXMKLSBpZ25vcmU9IiRpZ25v cmUgKCAtbmFtZSAqLm1vZC5jICkgLXBydW5lIC1vIgotKyMgUkhFTCB0YWdzIGFuZCBjc2NvcGUg c2hvdWxkIGFsc28gaWdub3JlIHJlZGhhdC9ycG0KLStpZ25vcmU9IiRpZ25vcmUgKCAtcGF0aCBy ZWRoYXQvcnBtICkgLXBydW5lIC1vIgotIAotICMgaWdub3JlIGFyYml0cmFyeSBkaXJlY3Rvcmll cwotIGlmIFsgLW4gIiR7SUdOT1JFX0RJUlN9IiBdOyB0aGVuCi1kaWZmIC0tZ2l0IGEvc2VjdXJp dHkvaW50ZWdyaXR5L3BsYXRmb3JtX2NlcnRzL2xvYWRfdWVmaS5jIGIvc2VjdXJpdHkvaW50ZWdy aXR5L3BsYXRmb3JtX2NlcnRzL2xvYWRfdWVmaS5jCi1pbmRleCBjMGQ2OTQ4NDQ2YzMuLmJlZDU2 NTMyZTIwNiAxMDA2NDQKLS0tLSBhL3NlY3VyaXR5L2ludGVncml0eS9wbGF0Zm9ybV9jZXJ0cy9s b2FkX3VlZmkuYwotKysrIGIvc2VjdXJpdHkvaW50ZWdyaXR5L3BsYXRmb3JtX2NlcnRzL2xvYWRf dWVmaS5jCi1AQCAtNzQsNyArNzQsOCBAQCBzdGF0aWMgX19pbml0IHZvaWQgKmdldF9jZXJ0X2xp c3QoZWZpX2NoYXIxNl90ICpuYW1lLCBlZmlfZ3VpZF90ICpndWlkLAotIAkJcmV0dXJuIE5VTEw7 Ci0gCi0gCWlmICgqc3RhdHVzICE9IEVGSV9CVUZGRVJfVE9PX1NNQUxMKSB7Ci0tCQlwcl9lcnIo IkNvdWxkbid0IGdldCBzaXplOiAweCVseFxuIiwgKnN0YXR1cyk7Ci0rCQlwcl9lcnIoIkNvdWxk bid0IGdldCBzaXplOiAlcyAoMHglbHgpXG4iLAotKwkJICAgICAgIGVmaV9zdGF0dXNfdG9fc3Ry KCpzdGF0dXMpLCAqc3RhdHVzKTsKLSAJCXJldHVybiBOVUxMOwotIAl9Ci0gCi1AQCAtODUsNyAr ODYsOCBAQCBzdGF0aWMgX19pbml0IHZvaWQgKmdldF9jZXJ0X2xpc3QoZWZpX2NoYXIxNl90ICpu YW1lLCBlZmlfZ3VpZF90ICpndWlkLAotIAkqc3RhdHVzID0gZWZpLmdldF92YXJpYWJsZShuYW1l LCBndWlkLCBOVUxMLCAmbHNpemUsIGRiKTsKLSAJaWYgKCpzdGF0dXMgIT0gRUZJX1NVQ0NFU1Mp IHsKLSAJCWtmcmVlKGRiKTsKLS0JCXByX2VycigiRXJyb3IgcmVhZGluZyBkYiB2YXI6IDB4JWx4 XG4iLCAqc3RhdHVzKTsKLSsJCXByX2VycigiRXJyb3IgcmVhZGluZyBkYiB2YXI6ICVzICgweCVs eClcbiIsCi0rCQkgICAgICAgZWZpX3N0YXR1c190b19zdHIoKnN0YXR1cyksICpzdGF0dXMpOwot IAkJcmV0dXJuIE5VTEw7Ci0gCX0KLSAKLWRpZmYgLS1naXQgYS9zZWN1cml0eS9sb2NrZG93bi9L Y29uZmlnIGIvc2VjdXJpdHkvbG9ja2Rvd24vS2NvbmZpZwotaW5kZXggZTg0ZGRmNDg0MDEwLi5k MDUwMTM1M2E0YjkgMTAwNjQ0Ci0tLS0gYS9zZWN1cml0eS9sb2NrZG93bi9LY29uZmlnCi0rKysg Yi9zZWN1cml0eS9sb2NrZG93bi9LY29uZmlnCi1AQCAtMTYsNiArMTYsMTkgQEAgY29uZmlnIFNF Q1VSSVRZX0xPQ0tET1dOX0xTTV9FQVJMWQotIAkgIHN1YnN5c3RlbSBpcyBmdWxseSBpbml0aWFs aXNlZC4gSWYgZW5hYmxlZCwgbG9ja2Rvd24gd2lsbAotIAkgIHVuY29uZGl0aW9uYWxseSBiZSBj YWxsZWQgYmVmb3JlIGFueSBvdGhlciBMU01zLgotIAotK2NvbmZpZyBMT0NLX0RPV05fSU5fRUZJ X1NFQ1VSRV9CT09UCi0rCWJvb2wgIkxvY2sgZG93biB0aGUga2VybmVsIGluIEVGSSBTZWN1cmUg Qm9vdCBtb2RlIgotKwlkZWZhdWx0IG4KLSsJZGVwZW5kcyBvbiBFRkkgJiYgU0VDVVJJVFlfTE9D S0RPV05fTFNNX0VBUkxZCi0rCWhlbHAKLSsJICBVRUZJIFNlY3VyZSBCb290IHByb3ZpZGVzIGEg bWVjaGFuaXNtIGZvciBlbnN1cmluZyB0aGF0IHRoZSBmaXJtd2FyZQotKwkgIHdpbGwgb25seSBs b2FkIHNpZ25lZCBib290bG9hZGVycyBhbmQga2VybmVscy4gIFNlY3VyZSBib290IG1vZGUgbWF5 Ci0rCSAgYmUgZGV0ZXJtaW5lZCBmcm9tIEVGSSB2YXJpYWJsZXMgcHJvdmlkZWQgYnkgdGhlIHN5 c3RlbSBmaXJtd2FyZSBpZgotKwkgIG5vdCBpbmRpY2F0ZWQgYnkgdGhlIGJvb3QgcGFyYW1ldGVy cy4KLSsKLSsJICBFbmFibGluZyB0aGlzIG9wdGlvbiByZXN1bHRzIGluIGtlcm5lbCBsb2NrZG93 biBiZWluZyB0cmlnZ2VyZWQgaWYKLSsJICBFRkkgU2VjdXJlIEJvb3QgaXMgc2V0LgotKwotIGNo b2ljZQotIAlwcm9tcHQgIktlcm5lbCBkZWZhdWx0IGxvY2tkb3duIG1vZGUiCi0gCWRlZmF1bHQg TE9DS19ET1dOX0tFUk5FTF9GT1JDRV9OT05FCi1kaWZmIC0tZ2l0IGEvc2VjdXJpdHkvbG9ja2Rv d24vbG9ja2Rvd24uYyBiL3NlY3VyaXR5L2xvY2tkb3duL2xvY2tkb3duLmMKLWluZGV4IDhkNDY4 ODZkMmNjYS4uMTRhOWNkZmY5NDJiIDEwMDY0NAotLS0tIGEvc2VjdXJpdHkvbG9ja2Rvd24vbG9j a2Rvd24uYwotKysrIGIvc2VjdXJpdHkvbG9ja2Rvd24vbG9ja2Rvd24uYwotQEAgLTcyLDYgKzcy LDE3IEBAIHN0YXRpYyBpbnQgbG9ja2Rvd25faXNfbG9ja2VkX2Rvd24oZW51bSBsb2NrZG93bl9y ZWFzb24gd2hhdCkKLSAJcmV0dXJuIDA7Ci0gfQotIAotKy8qKgotKyAqIHNlY3VyaXR5X2xvY2tf a2VybmVsX2Rvd24oKSAtIFB1dCB0aGUga2VybmVsIGludG8gbG9jay1kb3duIG1vZGUuCi0rICoK LSsgKiBAd2hlcmU6IFdoZXJlIHRoZSBsb2NrLWRvd24gaXMgb3JpZ2luYXRpbmcgZnJvbSAoZS5n LiBjb21tYW5kIGxpbmUgb3B0aW9uKQotKyAqIEBsZXZlbDogVGhlIGxvY2stZG93biBsZXZlbCAo Y2FuIG9ubHkgaW5jcmVhc2UpCi0rICovCi0raW50IHNlY3VyaXR5X2xvY2tfa2VybmVsX2Rvd24o Y29uc3QgY2hhciAqd2hlcmUsIGVudW0gbG9ja2Rvd25fcmVhc29uIGxldmVsKQotK3sKLSsJcmV0 dXJuIGxvY2tfa2VybmVsX2Rvd24od2hlcmUsIGxldmVsKTsKLSt9Ci0rCi0gc3RhdGljIHN0cnVj dCBzZWN1cml0eV9ob29rX2xpc3QgbG9ja2Rvd25faG9va3NbXSBfX3JvX2FmdGVyX2luaXQgPSB7 Ci0gCUxTTV9IT09LX0lOSVQobG9ja2VkX2Rvd24sIGxvY2tkb3duX2lzX2xvY2tlZF9kb3duKSwK LSB9OwotZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9ERU5ZTElTVC5y aGVsIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL0RFTllMSVNULnJoZWwKLW5ldyBmaWxl IG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwMDAuLjk0MjRhODNjNmY0OAotLS0tIC9kZXYv bnVsbAotKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL0RFTllMSVNULnJoZWwKLUBA IC0wLDAgKzEsNzYgQEAKLSsjIFRlc3RzIHRoYXQgbmVlZCBDT05GSUdfRlVOQ1RJT05fRVJST1Jf SU5KRUNUSU9OCi0rIyBUeXBpY2FsIG9ic2VydmVkIGVycm9ycyBhcmU6Ci0rIyAgICAgPC4uLnNv bWUgZnVuY3Rpb24uLi4+IGlzIG5vdCBzbGVlcGFibGUKLSsjICAgICA8Li4uc29tZSBmdW5jdGlv bi4uLj4gaXMgbm90IG1vZGlmaWFibGUKLStjZ3JwX2xvY2FsX3N0b3JhZ2UveWVzX3JjdV9sb2Nr Ci0rY2dycF9sb2NhbF9zdG9yYWdlL25vX3JjdV9sb2NrCi0rY2dycF9sb2NhbF9zdG9yYWdlL2Nn cnAxX3llc19yY3VfbG9jawotK2NncnBfbG9jYWxfc3RvcmFnZS9jZ3JwMV9ub19yY3VfbG9jawot K2NvbXB1dGVfbGl2ZV9yZWdpc3RlcnMvYWRkcl9zcGFjZV9jYXN0Ci0rZHlucHRyL3Rlc3RfcmVh ZF93cml0ZQotK2R5bnB0ci90ZXN0X2R5bnB0cl9kYXRhCi0rZHlucHRyL3Rlc3RfZHlucHRyX2Nv cHkKLStkeW5wdHIvdGVzdF9keW5wdHJfY29weV94ZHAKLStkeW5wdHIvdGVzdF9keW5wdHJfbWVt c2V0X3plcm8KLStkeW5wdHIvdGVzdF9keW5wdHJfbWVtc2V0X25vdHplcm8KLStkeW5wdHIvdGVz dF9keW5wdHJfbWVtc2V0X3plcm9fb2Zmc2V0Ci0rZHlucHRyL3Rlc3RfZHlucHRyX21lbXNldF96 ZXJvX2FkanVzdGVkCi0rZHlucHRyL3Rlc3RfZHlucHRyX21lbXNldF9vdmVyZmxvdwotK2R5bnB0 ci90ZXN0X2R5bnB0cl9tZW1zZXRfb3ZlcmZsb3dfb2Zmc2V0Ci0rZHlucHRyL3Rlc3RfZHlucHRy X21lbXNldF9yZWFkb25seQotK2R5bnB0ci90ZXN0X2R5bnB0cl9tZW1zZXRfeGRwX2NodW5rcwot K2R5bnB0ci90ZXN0X2R5bnB0cl9za2JfbWV0YV9kYXRhCi0rZHlucHRyL3Rlc3RfZHlucHRyX3Nr Yl9tZXRhX2ZsYWdzCi0rZHlucHRyL3Rlc3RfcmluZ2J1ZgotK2R5bnB0ci90ZXN0X3NrYl9yZWFk b25seQotK2R5bnB0ci90ZXN0X2R5bnB0cl9za2JfZGF0YQotK2R5bnB0ci90ZXN0X2FkanVzdAot K2R5bnB0ci90ZXN0X2FkanVzdF9lcnIKLStkeW5wdHIvdGVzdF96ZXJvX3NpemVfZHlucHRyCi0r ZHlucHRyL3Rlc3RfZHlucHRyX2lzX251bGwKLStkeW5wdHIvdGVzdF9keW5wdHJfaXNfcmRvbmx5 Ci0rZHlucHRyL3Rlc3RfZHlucHRyX2Nsb25lCi0rZHlucHRyL3Rlc3RfZHlucHRyX3NrYl9ub19i dWZmCi0rZHlucHRyL3Rlc3RfZHlucHRyX3NrYl9zdHJjbXAKLStkeW5wdHIvdGVzdF9keW5wdHJf c2tiX3RwX2J0ZgotK2R5bnB0ci90ZXN0X3Byb2JlX3JlYWRfdXNlcl9keW5wdHIKLStkeW5wdHIv dGVzdF9wcm9iZV9yZWFkX2tlcm5lbF9keW5wdHIKLStkeW5wdHIvdGVzdF9wcm9iZV9yZWFkX3Vz ZXJfc3RyX2R5bnB0cgotK2R5bnB0ci90ZXN0X3Byb2JlX3JlYWRfa2VybmVsX3N0cl9keW5wdHIK LStkeW5wdHIvdGVzdF9jb3B5X2Zyb21fdXNlcl9keW5wdHIKLStkeW5wdHIvdGVzdF9jb3B5X2Zy b21fdXNlcl9zdHJfZHlucHRyCi0rZHlucHRyL3Rlc3RfY29weV9mcm9tX3VzZXJfdGFza19keW5w dHIKLStkeW5wdHIvdGVzdF9jb3B5X2Zyb21fdXNlcl90YXNrX3N0cl9keW5wdHIKLStpcnEvaXJx X3NsZWVwYWJsZV9oZWxwZXIKLStpcnEvaXJxX3NsZWVwYWJsZV9rZnVuYwotK2l0ZXJzL2l0ZXJf Y3NzX3Rhc2tfZm9yX2VhY2hfc2xlZXAKLStpdGVycy9pdGVyX3JldF9yY3VfdGVzdF9wcm90ZWN0 ZWQKLStpdGVycy9pdGVyX3JldF9yY3VfdGVzdF90eXBlCi0raXRlcnMvaXRlcl9yZXRfcmN1X3Rl c3RfcHJvdGVjdGVkX25vc3RydWN0Ci0raXRlcnMvaXRlcl9yZXRfcmN1X3Rlc3RfdHlwZV9ub3N0 cnVjdAotK2l0ZXJzL3Rhc2sKLStpdGVycy9jc3MKLStpdGVycy9pdGVyX3Rhc2tzX3dpdGhvdXRf bG9jawotK2l0ZXJzL2l0ZXJfY3NzX3dpdGhvdXRfbG9jawotK2l0ZXJzL2l0ZXJfdGFza3NfbG9j a19hbmRfdW5sb2NrCi0raXRlcnMvaXRlcl9jc3NfbG9ja19hbmRfdW5sb2NrCi0rbWFwX2V4Y2wv bWFwX2V4Y2xfYWxsb3dlZAotK21hcF9pbl9tYXAvc2xlZXBhYmxlX2FjY19tYXBfaW5fYXJyYXkK LSttYXBfaW5fbWFwL3NsZWVwYWJsZV9hY2NfbWFwX2luX2h0YWIKLSttZW1fcmRvbmx5X3VudHJ1 c3RlZC9oZWxwZXJfcGFyYW1fbm90X29rCi0rbW9kdWxlX2F0dGFjaAotK3ByZWVtcHRfbG9jay9w cmVlbXB0X3NsZWVwYWJsZV9oZWxwZXIKLStwcmVlbXB0X2xvY2svcHJlZW1wdF9zbGVlcGFibGVf a2Z1bmMKLStyY3VfcmVhZF9sb2NrL3N1Y2Nlc3MKLStyY3VfcmVhZF9sb2NrL3JjdXB0cl9hY3F1 aXJlCi0rcmVhZF92c3lzY2FsbAotK3JlZmNvdW50ZWRfa3B0ci9yYnRyZWVfc2xlZXBhYmxlX3Jj dQotK3JlZmNvdW50ZWRfa3B0ci9yYnRyZWVfc2xlZXBhYmxlX3JjdV9ub19leHBsaWNpdF9yY3Vf bG9jawotK3JlZmNvdW50ZWRfa3B0cl9mYWlsL3JidHJlZV9mYWlsX3NsZWVwYWJsZV9sb2NrX2Fj cm9zc19yY3UKLSt0ZXN0X2xzbS9sc21fYmFzaWMKLSt2ZXJpZmllcl9nbG9iYWxfc3VicHJvZ3Mv YXJnX3RhZ19jdHhfZm1vZF9yZXQKLSsKLStrcHJvYmVfbXVsdGlfdGVzdC9hdHRhY2hfb3ZlcnJp ZGUgICAgICAgICAgICAgICAgIyBuZWVkcyBDT05GSUdfQlBGX0tQUk9CRV9PVkVSUklERQotK2xp YmJwZl9wcm9iZV9wcm9nX3R5cGVzL0JQRl9QUk9HX1RZUEVfTElSQ19NT0RFMiAjIG5lZWRzIENP TkZJR19CUEZfTElSQ19NT0RFMgotK3Rlc3RfYnBmZnMgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAjIG5lZWRzIENPTkZJR19CUEZfUFJFTE9BRAotK3R1bm5lbCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIG5lZWRzIENPTkZJR19ORVRfRk9V Ci1kaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL01ha2VmaWxlIGIvdG9v bHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL01ha2VmaWxlCi1pbmRleCBiNjQyZWU0ODllYTYuLjdl MzIwNDE4NmE4YiAxMDA2NDQKLS0tLSBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9NYWtl ZmlsZQotKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL01ha2VmaWxlCi1AQCAtNTMy LDcgKzUzMiw3IEBAIExTS0VMUyA6PSBmZXhpdF9zbGVlcC5jIHRyYWNlX3ByaW50ay5jIHRyYWNl X3ZwcmludGsuYyBtYXBfcHRyX2tlcm4uYyAJXAotIExTS0VMU19TSUdORUQgOj0gZmVudHJ5X3Rl c3QuYyBmZXhpdF90ZXN0LmMgYXRvbWljcy5jCi0gCi0gIyBHZW5lcmF0ZSBib3RoIGxpZ2h0IHNr ZWxldG9uIGFuZCBsaWJicGYgc2tlbGV0b24gZm9yIHRoZXNlCi0tTFNLRUxTX0VYVFJBIDo9IHRl c3Rfa3N5bXNfbW9kdWxlLmMgdGVzdF9rc3ltc193ZWFrLmMga2Z1bmNfY2FsbF90ZXN0LmMgXAot K0xTS0VMU19FWFRSQSA6PSB0ZXN0X2tzeW1zX21vZHVsZS5jIGtmdW5jX2NhbGxfdGVzdC5jIFwK LSAJa2Z1bmNfY2FsbF90ZXN0X3N1YnByb2cuYwotIFNLRUxfQkxBQ0tMSVNUICs9ICQkKExTS0VM UykgJCQoTFNLRUxTX1NJR05FRCkKLSAKLWRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0 ZXN0cy9icGYvcHJvZ190ZXN0cy9rc3ltc19idGYuYyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3Rz L2JwZi9wcm9nX3Rlc3RzL2tzeW1zX2J0Zi5jCi1pbmRleCAxZDdhMmYxZTA3MzEuLmIyMmYzYTlj YjhiOCAxMDA2NDQKLS0tLSBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9nX3Rlc3Rz L2tzeW1zX2J0Zi5jCi0rKysgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ190ZXN0 cy9rc3ltc19idGYuYwotQEAgLTcsNyArNyw2IEBACi0gI2luY2x1ZGUgInRlc3Rfa3N5bXNfYnRm LnNrZWwuaCIKLSAjaW5jbHVkZSAidGVzdF9rc3ltc19idGZfbnVsbF9jaGVjay5za2VsLmgiCi0g I2luY2x1ZGUgInRlc3Rfa3N5bXNfd2Vhay5za2VsLmgiCi0tI2luY2x1ZGUgInRlc3Rfa3N5bXNf d2Vhay5sc2tlbC5oIgotICNpbmNsdWRlICJ0ZXN0X2tzeW1zX2J0Zl93cml0ZV9jaGVjay5za2Vs LmgiCi0gCi0gc3RhdGljIGludCBkdXJhdGlvbjsKLUBAIC0xMTEsMzMgKzExMCw2IEBAIHN0YXRp YyB2b2lkIHRlc3Rfd2Vha19zeW1zKHZvaWQpCi0gCXRlc3Rfa3N5bXNfd2Vha19fZGVzdHJveShz a2VsKTsKLSB9Ci0gCi0tc3RhdGljIHZvaWQgdGVzdF93ZWFrX3N5bXNfbHNrZWwodm9pZCkKLS17 Ci0tCXN0cnVjdCB0ZXN0X2tzeW1zX3dlYWtfbHNrZWwgKnNrZWw7Ci0tCXN0cnVjdCB0ZXN0X2tz eW1zX3dlYWtfbHNrZWxfX2RhdGEgKmRhdGE7Ci0tCWludCBlcnI7Ci0tCi0tCXNrZWwgPSB0ZXN0 X2tzeW1zX3dlYWtfbHNrZWxfX29wZW5fYW5kX2xvYWQoKTsKLS0JaWYgKCFBU1NFUlRfT0tfUFRS KHNrZWwsICJ0ZXN0X2tzeW1zX3dlYWtfbHNrZWxfX29wZW5fYW5kX2xvYWQiKSkKLS0JCXJldHVy bjsKLS0KLS0JZXJyID0gdGVzdF9rc3ltc193ZWFrX2xza2VsX19hdHRhY2goc2tlbCk7Ci0tCWlm ICghQVNTRVJUX09LKGVyciwgInRlc3Rfa3N5bXNfd2Vha19sc2tlbF9fYXR0YWNoIikpCi0tCQln b3RvIGNsZWFudXA7Ci0tCi0tCS8qIHRyaWdnZXIgdHJhY2Vwb2ludCAqLwotLQl1c2xlZXAoMSk7 Ci0tCi0tCWRhdGEgPSBza2VsLT5kYXRhOwotLQlBU1NFUlRfRVEoZGF0YS0+b3V0X19leGlzdGlu Z190eXBlZCwgMCwgImV4aXN0aW5nIHR5cGVkIGtzeW0iKTsKLS0JQVNTRVJUX05FUShkYXRhLT5v dXRfX2V4aXN0aW5nX3R5cGVsZXNzLCAtMSwgImV4aXN0aW5nIHR5cGVsZXNzIGtzeW0iKTsKLS0J QVNTRVJUX0VRKGRhdGEtPm91dF9fbm9uX2V4aXN0ZW50X3R5cGVsZXNzLCAwLCAibm9uZXhpc3Rl bnQgdHlwZWxlc3Mga3N5bSIpOwotLQlBU1NFUlRfRVEoZGF0YS0+b3V0X19ub25fZXhpc3RlbnRf dHlwZWQsIDAsICJub25leGlzdGVudCB0eXBlZCBrc3ltIik7Ci0tCi0tY2xlYW51cDoKLS0JdGVz dF9rc3ltc193ZWFrX2xza2VsX19kZXN0cm95KHNrZWwpOwotLX0KLS0KLSBzdGF0aWMgdm9pZCB0 ZXN0X3dyaXRlX2NoZWNrKGJvb2wgdGVzdF9oYW5kbGVyMSkKLSB7Ci0gCXN0cnVjdCB0ZXN0X2tz eW1zX2J0Zl93cml0ZV9jaGVjayAqc2tlbDsKLUBAIC0xODAsOSArMTUyLDYgQEAgdm9pZCB0ZXN0 X2tzeW1zX2J0Zih2b2lkKQotIAlpZiAodGVzdF9fc3RhcnRfc3VidGVzdCgid2Vha19rc3ltcyIp KQotIAkJdGVzdF93ZWFrX3N5bXMoKTsKLSAKLS0JaWYgKHRlc3RfX3N0YXJ0X3N1YnRlc3QoIndl YWtfa3N5bXNfbHNrZWwiKSkKLS0JCXRlc3Rfd2Vha19zeW1zX2xza2VsKCk7Ci0tCi0gCWlmICh0 ZXN0X19zdGFydF9zdWJ0ZXN0KCJ3cml0ZV9jaGVjazEiKSkKLSAJCXRlc3Rfd3JpdGVfY2hlY2so dHJ1ZSk7Ci0gCgpkaWZmIC0tZ2l0IGEvcGF0Y2gtNy4zLXJlZGhhdC5wYXRjaCBiL3BhdGNoLTcu My1yZWRoYXQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2E2ZDI3 MwotLS0gL2Rldi9udWxsCisrKyBiL3BhdGNoLTcuMy1yZWRoYXQucGF0Y2gKQEAgLTAsMCArMSw0 MTAzIEBACisgRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9rZXJuZWwtcGFyYW1ldGVycy50eHQg ICAgfCAgMjMgKworIERvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvcmgtd2FpdmVkLWl0ZW1zLnJz dCAgICAgIHwgIDI5ICsrCisgS2NvbmZpZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDIgKworIEtjb25maWcucmVkaGF0ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDMxICsrCisgTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMzggKy0KKyBhcmNoL2FybS9LY29uZmlnICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQorIGFyY2gvYXJtNjQvS2NvbmZpZyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCisgYXJjaC9hcm02NC9rZXJu ZWwvc2V0dXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjcgKworIGFyY2gvczM5MC9p bmNsdWRlL2FzbS9pcGwuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKKyBhcmNoL3Mz OTAva2VybmVsL2lwbC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSArCisgYXJj aC9zMzkwL2tlcm5lbC9zZXR1cC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKwor IGFyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMgICAgICAgICAgICAgICAgICAgICAgIHwgICAx ICsKKyBhcmNoL3g4Ni9rZXJuZWwvc2V0dXAuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IDEwMSArKystCisgY3J5cHRvL2FrY2lwaGVyLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDMgKy0KKyBjcnlwdG8vZGguYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAyNSArCisgY3J5cHRvL3NlcWl2LmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMTUgKy0KKyBjcnlwdG8vc2lnLmMgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQorIGNyeXB0by90ZXN0bWdyLmMgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICstCisgZHJpdmVycy9hY3BpL2FwZWkvaGVz dC5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDggKworIGRyaXZlcnMvYWNwaS9pcnEu YyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE3ICstCisgZHJpdmVycy9hY3Bp L3NjYW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKworIGRyaXZlcnMv YXRhL2xpYmFoY2kuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDE4ICsKKyBkcml2 ZXJzL2NoYXIvaXBtaS9pcG1pX2RtaS5jICAgICAgICAgICAgICAgICAgICAgICB8ICAxNSArCisg ZHJpdmVycy9jaGFyL2lwbWkvaXBtaV9tc2doYW5kbGVyLmMgICAgICAgICAgICAgICAgfCAgMTYg Ky0KKyBkcml2ZXJzL2NoYXIvcmFuZG9tLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 IDEyNiArKysrLQorIGRyaXZlcnMvZmlybXdhcmUvZWZpL01ha2VmaWxlICAgICAgICAgICAgICAg ICAgICAgIHwgICAxICsKKyBkcml2ZXJzL2Zpcm13YXJlL2VmaS9lZmkuYyAgICAgICAgICAgICAg ICAgICAgICAgICB8IDEyNCArKystLQorIGRyaXZlcnMvZmlybXdhcmUvZWZpL2xpYnN0dWIvZmR0 LmMgICAgICAgICAgICAgICAgIHwgICA1ICsKKyBkcml2ZXJzL2Zpcm13YXJlL2VmaS9saWJzdHVi L3NlY3VyZWJvb3QuYyAgICAgICAgICB8ICAxNCArLQorIGRyaXZlcnMvZmlybXdhcmUvZWZpL3Nl Y3VyZWJvb3QuYyAgICAgICAgICAgICAgICAgIHwgIDM4ICsrCisgZHJpdmVycy9od3RyYWNpbmcv Y29yZXNpZ2h0L2NvcmVzaWdodC1ldG00eC1jb3JlLmMgfCAgMTkgKworIGRyaXZlcnMvaW9tbXUv aW9tbXUuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIyICsKKyBkcml2ZXJzL21l c3NhZ2UvZnVzaW9uL21wdHNhcy5jICAgICAgICAgICAgICAgICAgICB8ICAgNSArCisgZHJpdmVy cy9tZXNzYWdlL2Z1c2lvbi9tcHRzcGkuYyAgICAgICAgICAgICAgICAgICAgfCAgIDUgKworIGRy aXZlcnMvbmV0L3dpcmVndWFyZC9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgIHwgICA2ICsK KyBkcml2ZXJzL3BjaS9wY2ktZHJpdmVyLmMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAg OSArCisgZHJpdmVycy9wY2kvcXVpcmtzLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg fCAgMjQgKworIGRyaXZlcnMvc2NzaS9ocHNhLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICA0ICsKKyBkcml2ZXJzL3Njc2kvcWxhMnh4eC9xbGFfb3MuYyAgICAgICAgICAgICAg ICAgICAgICB8ICAgNiArCisgZHJpdmVycy9zY3NpL3NkLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgMTIgKworIGRyaXZlcnMvdXNiL2NvcmUvaHViLmMgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICA3ICsKKyBmcy9hZnMvbWFpbi5jICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8ICAgMyArCisgZnMvZXJvZnMvc3VwZXIuYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKworIGZzL2V4dDQvc3VwZXIuYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDExICsKKyBpbmNsdWRlL2xpbnV4L2NyeXB0 by5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCisgaW5jbHVkZS9saW51eC9l ZmkuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjIgKy0KKyBpbmNsdWRlL2xp bnV4L2tlcm5lbC5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyOCArKworIGluY2x1 ZGUvbGludXgvbHNtX2hvb2tfZGVmcy5oICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKKyBp bmNsdWRlL2xpbnV4L21vZHVsZS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSAr CisgaW5jbHVkZS9saW51eC9wYW5pYy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg MTcgKy0KKyBpbmNsdWRlL2xpbnV4L3BjaS5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAgNSArCisgaW5jbHVkZS9saW51eC9yYW5kb20uaCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTAgKworIGluY2x1ZGUvbGludXgvcmhfZmxhZ3MuaCAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDM0ICsrCisgaW5jbHVkZS9saW51eC9yaF9rYWJpLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCA1NDEgKysrKysrKysrKysrKysrKysrKysrCisgaW5jbHVkZS9saW51 eC9yaF93YWl2ZWQuaCAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTkgKworIGluY2x1ZGUv bGludXgvc2VjdXJpdHkuaCAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA5ICsKKyBpbml0 L21haW4uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNSArCisg a2VybmVsL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIg KworIGtlcm5lbC9icGYvY29yZS5jICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg ICA1ICsKKyBrZXJuZWwvYnBmL3N5c2NhbGwuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAyMyArCisga2VybmVsL21vZHVsZS9tYWluLmMgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgMTMgKworIGtlcm5lbC9tb2R1bGUvc2lnbmluZy5jICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgICA5ICstCisga2VybmVsL3BhbmljLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAgMTIgKworIGtlcm5lbC9yaF9mbGFncy5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMTE1ICsrKysrCisga2VybmVsL3JoX21lc3NhZ2VzLmMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCA0MTQgKysrKysrKysrKysrKysrKworIGtlcm5l bC9yaF9tZXNzYWdlcy5oICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzM0ICsrKysr KysrKysrKysKKyBrZXJuZWwvcmhfd2FpdmVkLmMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8IDE0NyArKysrKysKKyBzY3JpcHRzL01ha2VmaWxlLmxpYiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAgMyArCisgc2NyaXB0cy9tb2QvbW9kcG9zdC5jICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDggKworIHNjcmlwdHMvdGFncy5zaCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKKyBzZWN1cml0eS9pbnRlZ3JpdHkvcGxhdGZv cm1fY2VydHMvbG9hZF91ZWZpLmMgICAgICB8ICAgNiArLQorIHNlY3VyaXR5L2xvY2tkb3duL0tj b25maWcgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEzICsKKyBzZWN1cml0eS9sb2NrZG93 bi9sb2NrZG93bi5jICAgICAgICAgICAgICAgICAgICAgICB8ICAxMSArCisgdG9vbHMvdGVzdGlu Zy9zZWxmdGVzdHMvYnBmL0RFTllMSVNULnJoZWwgICAgICAgICAgfCAgNzYgKysrCisgdG9vbHMv dGVzdGluZy9zZWxmdGVzdHMvYnBmL01ha2VmaWxlICAgICAgICAgICAgICAgfCAgIDIgKy0KKyB0 b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ190ZXN0cy9rc3ltc19idGYuYyB8ICAzMSAt LQorIDc2IGZpbGVzIGNoYW5nZWQsIDI2NjkgaW5zZXJ0aW9ucygrKSwgMTA4IGRlbGV0aW9ucygt KQorCitkaWZmIC0tZ2l0IGEvRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9rZXJuZWwtcGFyYW1l dGVycy50eHQgYi9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL2tlcm5lbC1wYXJhbWV0ZXJzLnR4 dAoraW5kZXggZThmZjM2OTgyZDk3Li4wYWJmZjU2YjEzNWQgMTAwNjQ0CistLS0gYS9Eb2N1bWVu dGF0aW9uL2FkbWluLWd1aWRlL2tlcm5lbC1wYXJhbWV0ZXJzLnR4dAorKysrIGIvRG9jdW1lbnRh dGlvbi9hZG1pbi1ndWlkZS9rZXJuZWwtcGFyYW1ldGVycy50eHQKK0BAIC02NjQxLDYgKzY2NDEs MjAgQEAgS2VybmVsIHBhcmFtZXRlcnMKKyAJCTIJVGhlICJhaXJwbGFuZSBtb2RlIiBidXR0b24g dG9nZ2xlcyBiZXR3ZWVuIGV2ZXJ5dGhpbmcKKyAJCQlibG9ja2VkIGFuZCBldmVyeXRoaW5nIHVu YmxvY2tlZC4KKyAKKysJcmhfd2FpdmVkPQorKwkJCUVuYWJsZSB3YWl2ZWQgaXRlbXMgaW4gUkhF TC4KKysKKysJCQlTb21lIHNwZWNpZmljIGZlYXR1cmVzLCBvciBzZWN1cml0eSBtaXRpZ2F0aW9u cywgY2FuIGJlCisrCQkJd2FpdmVkICh0b2dnbGVkIG9uL29mZikgb24gZGVtYW5kIGluIFJIRUwu ICBIb3dldmVyLAorKwkJCXdhaXZpbmcgYW55IG9mIHRoZXNlIGl0ZW1zIHNob3VsZCBiZSB1c2Vk IGp1ZGljaW91c2x5LAorKwkJCWFzIGl0IGdlbmVyYWxseSBtZWFucyB0aGUgc3lzdGVtIG1pZ2h0 IGVuZCB1cCBiZWluZworKwkJCWNvbnNpZGVyZWQgaW5zZWN1cmUgb3IgZXZlbiBvdXQtb2Ytc2Nv cGUgZm9yIHN1cHBvcnQuCisrCisrCQkJRm9ybWF0OiA8aXRlbS0xPiw8aXRlbS0yPi4uLjxpdGVt LW4+CisrCisrCQkJVXNlICdyaF93YWl2ZWQnIHRvIGVuYWJsZSBhbGwgd2FpdmVkIGZlYXR1cmVz IGxpc3RlZCBhdAorKwkJCURvY3VtZW50YXRpb24vYWRtaW4tZ3VpZGUvcmgtd2FpdmVkLWZlYXR1 cmVzLnJzdAorKworIAlyaW5nM213YWl0PWRpc2FibGUKKyAJCQlbS05MXSBEaXNhYmxlIHJpbmcg MyBNT05JVE9SL01XQUlUIGZlYXR1cmUgb24gc3VwcG9ydGVkCisgCQkJQ1BVcy4KK0BAIC04MDYx LDYgKzgwNzUsMTUgQEAgS2VybmVsIHBhcmFtZXRlcnMKKyAJdW5rbm93bl9ubWlfcGFuaWMKKyAJ CQlbWDg2XSBDYXVzZSBwYW5pYyBvbiB1bmtub3duIE5NSS4KKyAKKysJdW5wcml2aWxlZ2VkX2Jw Zl9kaXNhYmxlZD0KKysJCQlGb3JtYXQ6IHsgIjAiIHwgIjEiIHwgIjIiIH0KKysJCQlTZXRzIHRo ZSBpbml0aWFsIHZhbHVlIG9mCisrCQkJa2VybmVsLnVucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQg c3lzY3RsIGtub2IuCisrCQkJMCAtIHVucHJpdmlsZWdlZCBicGYoKSBzeXNjYWxsIGFjY2VzcyBp cyBlbmFibGVkLgorKwkJCTEgLSB1bnByaXZpbGVnZWQgYnBmKCkgc3lzY2FsbCBhY2Nlc3MgaXMg ZGlzYWJsZWQgcGVybWFuZW50bHkuCisrCQkJMiAtIHVucHJpdmlsZWdlZCBicGYoKSBzeXNjYWxs IGFjY2VzcyBpcyBkaXNhYmxlZC4KKysJCQlEZWZhdWx0IHZhbHVlIGlzIDIuCisrCisgCXVud2lu ZF9kZWJ1ZwlbWDg2LTY0LEVBUkxZXQorIAkJCUVuYWJsZSB1bndpbmRlciBkZWJ1ZyBvdXRwdXQu ICBUaGlzIGNhbiBiZQorIAkJCXVzZWZ1bCBmb3IgZGVidWdnaW5nIGNlcnRhaW4gdW53aW5kZXIg ZXJyb3IKK2RpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL3JoLXdhaXZlZC1p dGVtcy5yc3QgYi9Eb2N1bWVudGF0aW9uL2FkbWluLWd1aWRlL3JoLXdhaXZlZC1pdGVtcy5yc3QK K25ldyBmaWxlIG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAwMDAuLjc0NzFjODkxNDE5Ywor LS0tIC9kZXYvbnVsbAorKysrIGIvRG9jdW1lbnRhdGlvbi9hZG1pbi1ndWlkZS9yaC13YWl2ZWQt aXRlbXMucnN0CitAQCAtMCwwICsxLDI5IEBACisrLi4gX3JoX3dhaXZlZF9pdGVtczoKKysKKys9 PT09PT09PT09PT09PT09PT09PQorK1JlZCBIYXQgV2FpdmVkIEl0ZW1zCisrPT09PT09PT09PT09 PT09PT09PT0KKysKKytXYWl2ZWQgSXRlbXMgaXMgYSBtZWNoYW5pc20gb2ZmZXJlZCBieSBSZWQg SGF0IHdoaWNoIGFsbG93cyBjdXN0b21lcnMgdG8gIndhaXZlIgorK2FuZCB1dGlsaXplIGZlYXR1 cmVzIHRoYXQgYXJlIG5vdCBlbmFibGVkIGJ5IGRlZmF1bHQgYXMgdGhlc2UgYXJlIGNvbnNpZGVy ZWQgYXMKKyt1bm1haW50YWluZWQsIGluc2VjdXJlLCBydWRpbWVudGFyeSwgb3IgZGVwcmVjYXRl ZCwgYnV0IGFyZSBzaGlwcGVkIHdpdGggdGhlCisrUkhFTCBrZXJuZWwgZm9yIGN1c3RvbWVyJ3Mg Y29udmluaWVuY2Ugb25seS4KKytXYWl2ZWQgSXRlbXMgY2FuIHJhbmdlIGZyb20gZmVhdHVyZXMg dGhhdCBjYW4gYmUgZW5hYmxlZCBvbiBkZW1hbmQgdG8gc3BlY2lmaWMKKytzZWN1cml0eSBtaXRp Z2F0aW9ucyB0aGF0IGNhbiBiZSBkaXNhYmxlZCBvbiBkZW1hbmQuCisrCisrVG8gZXhwbGljaXRs eSAid2FpdmUiIGFueSBvZiB0aGVzZSBpdGVtcywgUkhFTCBvZmZlcnMgdGhlIGBgcmhfd2FpdmVk YGAKKytrZXJuZWwgYm9vdCBwYXJhbWV0ZXIuIFRvIGFsbG93IHNldCBvZiB3YWl2ZWQgaXRlbXMs IGFwcGVuZAorK2Bgcmhfd2FpdmVkPTxpdGVtIG5hbWU+LC4uLiw8aXRlbSBuYW1lPmBgIHRvIHRo ZSBrZXJuZWwKKytjbWRsaW5lLgorK0FwcGVuZGluZyBgYHJoX3dhaXZlZD1mZWF0dXJlc2BgIHdp bGwgd2FpdmUgYWxsIGZlYXR1cmVzIGxpc3RlZCBiZWxvdywKKythbmQgYXBwZW5kaW5nIGBgcmhf d2FpdmVkPWN2ZXNgYCB3aWxsIHdhaXZlIGFsbCBzZWN1cml0eSBtaXRpZ2F0aW9ucworK2xpc3Rl ZCBiZWxvdy4KKysKKytUaGUgd2FpdmVkIGl0ZW1zIGxpc3RlZCBpbiB0aGUgbmV4dCBzZXNzaW9u IGZvbGxvdyB0aGUgcGF0dGVybiBiZWxvdzoKKysKKystIGl0ZW0gbmFtZQorKyAgICAgICAgaXRl bSBkZXNjcmlwdGlvbgorKworK0xpc3Qgb2YgUmVkIEhhdCBXYWl2ZWQgSXRlbXMKKys9PT09PT09 PT09PT09PT09PT09PT09PT09PT09CisrCitkaWZmIC0tZ2l0IGEvS2NvbmZpZyBiL0tjb25maWcK K2luZGV4IDMwN2U1ODExNDRkZS4uMTFlOTNlNDc5Y2U0IDEwMDY0NAorLS0tIGEvS2NvbmZpZwor KysrIGIvS2NvbmZpZworQEAgLTMyLDMgKzMyLDUgQEAgc291cmNlICJsaWIvS2NvbmZpZy5kZWJ1 ZyIKKyBzb3VyY2UgIkRvY3VtZW50YXRpb24vS2NvbmZpZyIKKyAKKyBzb3VyY2UgImlvX3VyaW5n L0tjb25maWciCisrCisrc291cmNlICJLY29uZmlnLnJlZGhhdCIKK2RpZmYgLS1naXQgYS9LY29u ZmlnLnJlZGhhdCBiL0tjb25maWcucmVkaGF0CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXgg MDAwMDAwMDAwMDAwLi44NTc3MWQ3NGMzNGYKKy0tLSAvZGV2L251bGwKKysrKyBiL0tjb25maWcu cmVkaGF0CitAQCAtMCwwICsxLDMxIEBACisrIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BM LTIuMC1vbmx5CisrIworKyMgUmVkIEhhdCBzcGVjaWZpYyBvcHRpb25zCisrIworKworK21lbnUg IlJlZCBIYXQgb3B0aW9ucyIKKysKKytjb25maWcgUkhFTF9ESUZGRVJFTkNFUworKwlib29sICJF bmFibGUgUkhFTC1vbmx5IGNvZGUiCisrCWhlbHAKKysJICBUaGlzIG9wdGlvbiBjb250cm9scyB3 aGV0aGVyIHJoZWwtb25seSBjaGFuZ2VzIGFyZSBlbmFibGVkIGR1cmluZworKwkgIHRoZSBidWls ZC4gVW5sZXNzIHlvdSB3YW50IHRvIGVuYWJsZSByaGVsLW9ubHkgY2hhbmdlcywgc2F5IE4gaGVy ZS4KKysKKytjb25maWcgUkhfS0FCSV9TSVpFX0FMSUdOX0NIRUNLUworKwlib29sICJFbmFibGVz IG1vcmUgc3RyaW5nZW50IGthYmkgY2hlY2tzIGluIHRoZSBtYWNyb3MiCisrCWRlcGVuZHMgb24g UkhFTF9ESUZGRVJFTkNFUworKwlkZWZhdWx0IHkKKysJaGVscAorKwkgIFRoaXMgb3B0aW9uIGVu YWJsZXMgbW9yZSBzdHJpbmdlbnQga2FiaSBjaGVja3MuIFRob3NlIG11c3QKKysJICBiZSBkaXNh YmxlZCBpbiBjYXNlIG9mIGEgZGVidWcgYnVpbGQsIGJlY2F1c2UgZGVidWcgYnVpbGRzCisrCSAg YWxsb3cgdG8gY2hhbmdlIHN0cnVjdCBzaXplcy4KKysKKytjb25maWcgUkhfQVVUT01PVElWRQor Kwlib29sICJFbmFibGUgYXV0b21vdGl2ZSBvbmx5IGNvZGUiCisrCWRlcGVuZHMgb24gUkhFTF9E SUZGRVJFTkNFUworKwlkZWZhdWx0IG4KKysJaGVscAorKwkgIFRoaXMgb3B0aW9uIGNvbnRyb2xz IHdoZXRoZXIgY29kZSBpcyBpbmNsdWRlZCBpbiB0aGUgYXV0b21vdGl2ZQorKwkgIGtlcm5lbCBi dWlsZC4gSWYgeW91IGFyZSBidWlsZGluZyBhbiBhdXRvbW90aXZlIGtlcm5lbCwgc2F5IFkuCisr CisrZW5kbWVudQorZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKK2luZGV4IGRkY2M2 ZGNhMWVjZS4uN2M1MmY0YzM2OGVmIDEwMDY0NAorLS0tIGEvTWFrZWZpbGUKKysrKyBiL01ha2Vm aWxlCitAQCAtMzU4LDYgKzM1OCwxNyBAQCBpZm5lcSAoJChmaWx0ZXIgaW5zdGFsbCwkKE1BS0VD TURHT0FMUykpLCkKKyAgICAgZW5kaWYKKyBlbmRpZgorIAorKyMgQ0tJL2Nyb3NzIGNvbXBpbGF0 aW9uIGhhY2sKKysjIERvIHdlIG5lZWQgdG8gcmVidWlsZCBzY3JpcHRzIGFmdGVyIGNyb3NzIGNv bXBpbGF0aW9uPworKyMgSWYga2VybmVsIHdhcyBjcm9zcy1jb21waWxlZCwgdGhlc2Ugc2NyaXB0 cyBoYXZlIGFyY2ggb2YgYnVpbGQgaG9zdC4KKytSRUJVSUxEX1NDUklQVFNfRk9SX0NST1NTOj0w CisrCisrIyBSZWdlbmVyYXRpbmcgY29uZmlnIHdpdGggaW5jb21wbGV0ZSBzb3VyY2UgdHJlZSB3 aWxsIHByb2R1Y2UgZGlmZmVyZW50CisrIyBjb25maWcgb3B0aW9ucy4gRGlzYWJsZSBpdC4KKytp ZmVxICgkKFJFQlVJTERfU0NSSVBUU19GT1JfQ1JPU1MpLDEpCisrbWF5LXN5bmMtY29uZmlnOj0K KytlbmRpZgorKworIGlmZGVmIG1peGVkLWJ1aWxkCisgIyA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAj IFdlJ3JlIGNhbGxlZCB3aXRoIG1peGVkIHRhcmdldHMgKCpjb25maWcgYW5kIGJ1aWxkIHRhcmdl dHMpLgorQEAgLTE0MzIsNiArMTQ0Myw4IEBAIHVhcGktYXNtLWdlbmVyaWM6CisgIyBHZW5lcmF0 ZSBzb21lIGZpbGVzCisgIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAKKytpbmNsdWRlICQoc3JjdHJl ZSkvTWFrZWZpbGUucmhlbHZlcgorKworICMgS0VSTkVMUkVMRUFTRSBjYW4gY2hhbmdlIGZyb20g YSBmZXcgZGlmZmVyZW50IHBsYWNlcywgbWVhbmluZyB2ZXJzaW9uLmgKKyAjIG5lZWRzIHRvIGJl IHVwZGF0ZWQsIHNvIHRoaXMgY2hlY2sgaXMgZm9yY2VkIG9uIGFsbCBidWlsZHMKKyAKK0BAIC0x NDU2LDcgKzE0NjksMTMgQEAgZGVmaW5lIGZpbGVjaGtfdmVyc2lvbi5oCisgCSgoYykgPiAyNTUg PyAyNTUgOiAoYykpKSc7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor IAllY2hvIFwjZGVmaW5lIExJTlVYX1ZFUlNJT05fTUFKT1IgJChWRVJTSU9OKTsgICAgICAgICAg ICAgICAgICAgIFwKKyAJZWNobyBcI2RlZmluZSBMSU5VWF9WRVJTSU9OX1BBVENITEVWRUwgJChQ QVRDSExFVkVMKTsgICAgICAgICAgICBcCistCWVjaG8gXCNkZWZpbmUgTElOVVhfVkVSU0lPTl9T VUJMRVZFTCAkKFNVQkxFVkVMKQorKwllY2hvIFwjZGVmaW5lIExJTlVYX1ZFUlNJT05fU1VCTEVW RUwgJChTVUJMRVZFTCk7ICAgICAgICAgICAgICAgIFwKKysJZWNobyAnI2RlZmluZSBSSEVMX01B Sk9SICQoUkhFTF9NQUpPUiknOyBcCisrCWVjaG8gJyNkZWZpbmUgUkhFTF9NSU5PUiAkKFJIRUxf TUlOT1IpJzsgXAorKwllY2hvICcjZGVmaW5lIFJIRUxfUkVMRUFTRV9WRVJTSU9OKGEsYikgKCgo YSkgPDwgOCkgKyAoYikpJzsgXAorKwllY2hvICcjZGVmaW5lIFJIRUxfUkVMRUFTRV9DT0RFIFwK KysJCSQoc2hlbGwgZXhwciAkKFJIRUxfTUFKT1IpIFwqIDI1NiArICQoUkhFTF9NSU5PUikpJzsg XAorKwllY2hvICcjZGVmaW5lIFJIRUxfUkVMRUFTRSAiJChSSEVMX1JFTEVBU0UpIicKKyBlbmRl ZgorIAorICQodmVyc2lvbl9oKTogcHJpdmF0ZSBQQVRDSExFVkVMIDo9ICQob3IgJChQQVRDSExF VkVMKSwgMCkKK0BAIC0yMTA4LDYgKzIxMjcsMjMgQEAgZW5kaWYKKyAKKyBpZmRlZiBDT05GSUdf TU9EVUxFUworIAorK3NjcmlwdHNfYnVpbGQ6CisrCSQoTUFLRSkgJChidWlsZCk9c2NyaXB0cy9i YXNpYworKwkkKE1BS0UpICQoYnVpbGQpPXNjcmlwdHMvbW9kCisrCSQoTUFLRSkgJChidWlsZCk9 c2NyaXB0cyBzY3JpcHRzL21vZHVsZS5sZHMKKysJJChNQUtFKSAkKGJ1aWxkKT1zY3JpcHRzIHNj cmlwdHMvdW5pZmRlZgorKwkkKE1BS0UpICQoYnVpbGQpPXNjcmlwdHMKKysKKytwcmVwYXJlX2Fm dGVyX2Nyb3NzOgorKwkjIGRpc2FibGUgU1RBQ0tfVkFMSURBVElPTiB0byBhdm9pZCBidWlsZGlu ZyBvYmp0b29sCisrCXNlZCAtaSAnL15DT05GSUdfU1RBQ0tfVkFMSURBVElPTi9kJyAuL2luY2x1 ZGUvY29uZmlnL2F1dG8uY29uZiB8fCB0cnVlCisrCSMgYnVpbGQgbWluaW11bSBzZXQgb2Ygc2Ny aXB0cyBhbmQgcmVzb2x2ZV9idGZpZHMgdG8gYWxsb3cgYnVpbGRpbmcKKysJIyBleHRlcm5hbCBt b2R1bGVzCisrCSQoTUFLRSkgS0JVSUxEX0VYVE1PRD0iIiBNPSIiIHNjcmlwdHNfYnVpbGQgVj0x CisrCSQoTUFLRSkgLUMgdG9vbHMvYnBmL3Jlc29sdmVfYnRmaWRzCisrCisrUEhPTlkgKz0gcHJl cGFyZV9hZnRlcl9jcm9zcyBzY3JpcHRzX2J1aWxkCisrCisgbW9kdWxlcy5vcmRlcjogJChidWls ZC1kaXIpCisgCUA6CisgCitkaWZmIC0tZ2l0IGEvYXJjaC9hcm0vS2NvbmZpZyBiL2FyY2gvYXJt L0tjb25maWcKK2luZGV4IDkxODcyNDBhMDJkYi4uNDZkMTI1ODcwMGFmIDEwMDY0NAorLS0tIGEv YXJjaC9hcm0vS2NvbmZpZworKysrIGIvYXJjaC9hcm0vS2NvbmZpZworQEAgLTEyMTYsOSArMTIx Niw5IEBAIGNvbmZpZyBISUdITUVNCisgCSAgSWYgdW5zdXJlLCBzYXkgbi4KKyAKKyBjb25maWcg SElHSFBURQorLQlib29sICJBbGxvY2F0ZSAybmQtbGV2ZWwgcGFnZXRhYmxlcyBmcm9tIGhpZ2ht ZW0iIGlmIEVYUEVSVAorKwlib29sICJBbGxvY2F0ZSAybmQtbGV2ZWwgcGFnZXRhYmxlcyBmcm9t IGhpZ2htZW0iCisgCWRlcGVuZHMgb24gSElHSE1FTSAmJiAhUFJFRU1QVF9SVAorLQlkZWZhdWx0 IHkKKysJZGVmYXVsdCBuCisgCWhlbHAKKyAJICBUaGUgVk0gdXNlcyBvbmUgcGFnZSBvZiBwaHlz aWNhbCBtZW1vcnkgZm9yIGVhY2ggcGFnZSB0YWJsZS4KKyAJICBGb3Igc3lzdGVtcyB3aXRoIGEg bG90IG9mIHByb2Nlc3NlcywgdGhpcyBjYW4gdXNlIGEgbG90IG9mCitkaWZmIC0tZ2l0IGEvYXJj aC9hcm02NC9LY29uZmlnIGIvYXJjaC9hcm02NC9LY29uZmlnCitpbmRleCBiM2FmZTA2ODg5MTku LmQyM2E3MjhhYWMwMyAxMDA2NDQKKy0tLSBhL2FyY2gvYXJtNjQvS2NvbmZpZworKysrIGIvYXJj aC9hcm02NC9LY29uZmlnCitAQCAtMTQ4OSw3ICsxNDg5LDcgQEAgZW5kY2hvaWNlCisgCisgY29u ZmlnIEFSTTY0X0ZPUkNFXzUyQklUCisgCWJvb2wgIkZvcmNlIDUyLWJpdCB2aXJ0dWFsIGFkZHJl c3NlcyBmb3IgdXNlcnNwYWNlIgorLQlkZXBlbmRzIG9uIEFSTTY0X1ZBX0JJVFNfNTIgJiYgRVhQ RVJUCisrCWRlcGVuZHMgb24gQVJNNjRfVkFfQklUU181MgorIAloZWxwCisgCSAgRm9yIHN5c3Rl bXMgd2l0aCA1Mi1iaXQgdXNlcnNwYWNlIFZBcyBlbmFibGVkLCB0aGUga2VybmVsIHdpbGwgYXR0 ZW1wdAorIAkgIHRvIG1haW50YWluIGNvbXBhdGliaWxpdHkgd2l0aCBvbGRlciBzb2Z0d2FyZSBi eSBwcm92aWRpbmcgNDgtYml0IFZBcworZGlmZiAtLWdpdCBhL2FyY2gvYXJtNjQva2VybmVsL3Nl dHVwLmMgYi9hcmNoL2FybTY0L2tlcm5lbC9zZXR1cC5jCitpbmRleCAyM2MwNWRjN2E4ZjIuLmQ3 YjdiMmYzOWUxNiAxMDA2NDQKKy0tLSBhL2FyY2gvYXJtNjQva2VybmVsL3NldHVwLmMKKysrKyBi L2FyY2gvYXJtNjQva2VybmVsL3NldHVwLmMKK0BAIC0zMiw2ICszMiw4IEBACisgI2luY2x1ZGUg PGxpbnV4L3NjaGVkL3Rhc2suaD4KKyAjaW5jbHVkZSA8bGludXgvc2NzLmg+CisgI2luY2x1ZGUg PGxpbnV4L21tLmg+CisrI2luY2x1ZGUgPGxpbnV4L3NlY3VyaXR5Lmg+CisrI2luY2x1ZGUgPGxp bnV4L2xpYmZkdC5oPgorIAorICNpbmNsdWRlIDxhc20vYWNwaS5oPgorICNpbmNsdWRlIDxhc20v Zml4bWFwLmg+CitAQCAtMjA3LDYgKzIwOSwyNCBAQCBzdGF0aWMgdm9pZCBfX2luaXQgc2V0dXBf bWFjaGluZV9mZHQocGh5c19hZGRyX3QgZHRfcGh5cykKKyAJZHVtcF9zdGFja19zZXRfYXJjaF9k ZXNjKCIlcyAoRFQpIiwgbmFtZSk7CisgfQorIAorK3N0YXRpYyB2b2lkIF9faW5pdCBpbml0X3Nl Y3VyZWJvb3RfbW9kZSh2b2lkKQorK3sKKysJdm9pZCAqZmR0ID0gaW5pdGlhbF9ib290X3BhcmFt czsKKysJdTY0IGNob3NlbjsKKysJY29uc3QgX19iZTMyICpwcm9wOworKwlpbnQgbGVuOworKwor KwljaG9zZW4gPSBmZHRfcGF0aF9vZmZzZXQoZmR0LCAiL2Nob3NlbiIpOworKwlpZiAoY2hvc2Vu IDwgMCkKKysJCXJldHVybjsKKysKKysJcHJvcCA9IGZkdF9nZXRwcm9wKGZkdCwgY2hvc2VuLCAi c2VjdXJlLWJvb3QtbW9kZSIsICZsZW4pOworKwlpZiAoIXByb3AgfHwgbGVuICE9IHNpemVvZih1 MzIpKQorKwkJcmV0dXJuOworKworKwllZmlfc2V0X3NlY3VyZV9ib290KChlbnVtIGVmaV9zZWN1 cmVib290X21vZGUpZmR0MzJfdG9fY3B1KCpwcm9wKSk7CisrfQorKworIHN0YXRpYyB2b2lkIF9f aW5pdCByZXF1ZXN0X3N0YW5kYXJkX3Jlc291cmNlcyh2b2lkKQorIHsKKyAJc3RydWN0IG1lbWJs b2NrX3JlZ2lvbiAqcmVnaW9uOworQEAgLTMyNyw2ICszNDcsMTMgQEAgdm9pZCBfX2luaXQgX19u b19zYW5pdGl6ZV9hZGRyZXNzIHNldHVwX2FyY2goY2hhciAqKmNtZGxpbmVfcCkKKyAJCQlwcl93 YXJuKEZXX0JVRyAiS2VybmVsIGltYWdlIG1pc2FsaWduZWQgYXQgYm9vdCwgcGxlYXNlIGZpeCB5 b3VyIGJvb3Rsb2FkZXIhIik7CisgCQlXQVJOX1RBSU5UKG1tdV9lbmFibGVkX2F0X2Jvb3QsIFRB SU5UX0ZJUk1XQVJFX1dPUktBUk9VTkQsCisgCQkJICAgRldfQlVHICJCb290ZWQgd2l0aCBNTVUg ZW5hYmxlZCEiKTsKKysJfSBlbHNlIHsKKysJCWluaXRfc2VjdXJlYm9vdF9tb2RlKCk7CisrCisr I2lmZGVmIENPTkZJR19MT0NLX0RPV05fSU5fRUZJX1NFQ1VSRV9CT09UCisrCQlpZiAoZWZpX2Vu YWJsZWQoRUZJX1NFQ1VSRV9CT09UKSkKKysJCQlzZWN1cml0eV9sb2NrX2tlcm5lbF9kb3duKCJF RkkgU2VjdXJlIEJvb3QgbW9kZSIsIExPQ0tET1dOX0lOVEVHUklUWV9NQVgpOworKyNlbmRpZgor IAl9CisgCisgCWFybTY0X21lbWJsb2NrX2luaXQoKTsKK2RpZmYgLS1naXQgYS9hcmNoL3MzOTAv aW5jbHVkZS9hc20vaXBsLmggYi9hcmNoL3MzOTAvaW5jbHVkZS9hc20vaXBsLmgKK2luZGV4IGIw ZDAwMDMyNDc5ZC4uYWZiOTU0NGZiMDA3IDEwMDY0NAorLS0tIGEvYXJjaC9zMzkwL2luY2x1ZGUv YXNtL2lwbC5oCisrKysgYi9hcmNoL3MzOTAvaW5jbHVkZS9hc20vaXBsLmgKK0BAIC0xMzksNiAr MTM5LDcgQEAgaW50IGlwbF9yZXBvcnRfYWRkX2NvbXBvbmVudChzdHJ1Y3QgaXBsX3JlcG9ydCAq cmVwb3J0LCBzdHJ1Y3Qga2V4ZWNfYnVmICprYnVmLAorIAkJCSAgICAgdW5zaWduZWQgY2hhciBm bGFncywgdW5zaWduZWQgc2hvcnQgY2VydCk7CisgaW50IGlwbF9yZXBvcnRfYWRkX2NlcnRpZmlj YXRlKHN0cnVjdCBpcGxfcmVwb3J0ICpyZXBvcnQsIHZvaWQgKmtleSwKKyAJCQkgICAgICAgdW5z aWduZWQgbG9uZyBhZGRyLCB1bnNpZ25lZCBsb25nIGxlbik7CisrYm9vbCBpcGxfZ2V0X3NlY3Vy ZWJvb3Qodm9pZCk7CisgCisgLyoKKyAgKiBESUFHIDMwOCBzdXBwb3J0CitkaWZmIC0tZ2l0IGEv YXJjaC9zMzkwL2tlcm5lbC9pcGwuYyBiL2FyY2gvczM5MC9rZXJuZWwvaXBsLmMKK2luZGV4IDNj MzQ2YjAyY2ViOS4uMzBlMTZhMGQ0NDkwIDEwMDY0NAorLS0tIGEvYXJjaC9zMzkwL2tlcm5lbC9p cGwuYworKysrIGIvYXJjaC9zMzkwL2tlcm5lbC9pcGwuYworQEAgLTI1MjcsMyArMjUyNyw4IEBA IGludCBpcGxfcmVwb3J0X2ZyZWUoc3RydWN0IGlwbF9yZXBvcnQgKnJlcG9ydCkKKyB9CisgCisg I2VuZGlmCisrCisrYm9vbCBpcGxfZ2V0X3NlY3VyZWJvb3Qodm9pZCkKKyt7CisrCXJldHVybiAh IWlwbF9zZWN1cmVfZmxhZzsKKyt9CitkaWZmIC0tZ2l0IGEvYXJjaC9zMzkwL2tlcm5lbC9zZXR1 cC5jIGIvYXJjaC9zMzkwL2tlcm5lbC9zZXR1cC5jCitpbmRleCBiNjAyODQzMjhmZTMuLmU0ZDM3 YjA4Y2EyOSAxMDA2NDQKKy0tLSBhL2FyY2gvczM5MC9rZXJuZWwvc2V0dXAuYworKysrIGIvYXJj aC9zMzkwL2tlcm5lbC9zZXR1cC5jCitAQCAtNDcsNiArNDcsNyBAQAorICNpbmNsdWRlIDxsaW51 eC9jcmFzaF9kdW1wLmg+CisgI2luY2x1ZGUgPGxpbnV4L21lbW9yeS5oPgorICNpbmNsdWRlIDxs aW51eC9zdGFydF9rZXJuZWwuaD4KKysjaW5jbHVkZSA8bGludXgvc2VjdXJpdHkuaD4KKyAjaW5j bHVkZSA8bGludXgvaHVnZXRsYi5oPgorICNpbmNsdWRlIDxsaW51eC9rbWVtbGVhay5oPgorIAor QEAgLTkxNyw2ICs5MTgsOSBAQCB2b2lkIF9faW5pdCBzZXR1cF9hcmNoKGNoYXIgKipjbWRsaW5l X3ApCisgCisgCWxvZ19jb21wb25lbnRfbGlzdCgpOworIAorKwlpZiAoaXBsX2dldF9zZWN1cmVi b290KCkpCisrCQlzZWN1cml0eV9sb2NrX2tlcm5lbF9kb3duKCJTZWN1cmUgSVBMIG1vZGUiLCBM T0NLRE9XTl9JTlRFR1JJVFlfTUFYKTsKKysKKyAJLyogSGF2ZSBvbmUgY29tbWFuZCBsaW5lIHRo YXQgaXMgcGFyc2VkIGFuZCBzYXZlZCBpbiAvcHJvYy9jbWRsaW5lICovCisgCS8qIGJvb3RfY29t bWFuZF9saW5lIGhhcyBiZWVuIGFscmVhZHkgc2V0IHVwIGluIGVhcmx5LmMgKi8KKyAJKmNtZGxp bmVfcCA9IGJvb3RfY29tbWFuZF9saW5lOworZGlmZiAtLWdpdCBhL2FyY2gveDg2L2tlcm5lbC9j cHUvY29tbW9uLmMgYi9hcmNoL3g4Ni9rZXJuZWwvY3B1L2NvbW1vbi5jCitpbmRleCBhM2NhZGRk NDExZWMuLmQ2NTRiYjJiOWM3YSAxMDA2NDQKKy0tLSBhL2FyY2gveDg2L2tlcm5lbC9jcHUvY29t bW9uLmMKKysrKyBiL2FyY2gveDg2L2tlcm5lbC9jcHUvY29tbW9uLmMKK0BAIC0xNzk3LDYgKzE3 OTcsNyBAQCBzdGF0aWMgdm9pZCBfX2luaXQgZWFybHlfaWRlbnRpZnlfY3B1KHN0cnVjdCBjcHVp bmZvX3g4NiAqYykKKyAJCWdldF9jcHVfdmVuZG9yKGMpOworIAkJaW50ZWxfdW5sb2NrX2NwdWlk X2xlYWZzKGMpOworIAkJZ2V0X2NwdV9jYXAoYyk7CisrCQlnZXRfbW9kZWxfbmFtZShjKTsgLyog UkhFTDogZ2V0IG1vZGVsIG5hbWUgZm9yIHVuc3VwcG9ydGVkIGNoZWNrICovCisgCQlzZXR1cF9m b3JjZV9jcHVfY2FwKFg4Nl9GRUFUVVJFX0NQVUlEKTsKKyAJCWdldF9jcHVfYWRkcmVzc19zaXpl cyhjKTsKKyAJCWNwdV9wYXJzZV9lYXJseV9wYXJhbSgpOworZGlmZiAtLWdpdCBhL2FyY2gveDg2 L2tlcm5lbC9zZXR1cC5jIGIvYXJjaC94ODYva2VybmVsL3NldHVwLmMKK2luZGV4IDQ2ODgyY2U3 OWMzYS4uNDkxNzNhYjNmY2Y3IDEwMDY0NAorLS0tIGEvYXJjaC94ODYva2VybmVsL3NldHVwLmMK KysrKyBiL2FyY2gveDg2L2tlcm5lbC9zZXR1cC5jCitAQCAtMjEsNiArMjEsNyBAQAorICNpbmNs dWRlIDxsaW51eC9wY2kuaD4KKyAjaW5jbHVkZSA8bGludXgvcmFuZG9tLmg+CisgI2luY2x1ZGUg PGxpbnV4L3Jvb3RfZGV2Lmg+CisrI2luY2x1ZGUgPGxpbnV4L3NlY3VyaXR5Lmg+CisgI2luY2x1 ZGUgPGxpbnV4L3N0YXRpY19jYWxsLmg+CisgI2luY2x1ZGUgPGxpbnV4L3N5c2ZiLmg+CisgI2lu Y2x1ZGUgPGxpbnV4L3N3aW90bGIuaD4KK0BAIC01Nyw2ICs1OCwxMCBAQAorICNpbmNsdWRlIDxh c20vdGhlcm1hbC5oPgorICNpbmNsdWRlIDxhc20vdW53aW5kLmg+CisgI2luY2x1ZGUgPGFzbS92 c3lzY2FsbC5oPgorKyNpbmNsdWRlIDxhc20vaW50ZWwtZmFtaWx5Lmg+CisrI2lmIGRlZmluZWQo Q09ORklHX1g4Nl9MT0NBTF9BUElDKQorKyNpbmNsdWRlIDxhc20vbm1pLmg+CisrI2VuZGlmCisg CisgLyoKKyAgKiBtYXhfbG93X3Bmbl9tYXBwZWQ6IGhpZ2hlc3QgZGlyZWN0bHkgbWFwcGVkIHBm biA8IDQgR0IKK0BAIC04MjUsNiArODMwLDc5IEBAIHN0YXRpYyB2b2lkIF9faW5pdCBlYXJseV9y ZXNlcnZlX21lbW9yeSh2b2lkKQorIAl0cmltX3NuYl9tZW1vcnkoKTsKKyB9CisgCisrI2lmZGVm IENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCisrCisrc3RhdGljIHZvaWQgcmhfY2hlY2tfc3VwcG9y dGVkKHZvaWQpCisreworKwlib29sIGd1ZXN0OworKworKwlndWVzdCA9ICh4ODZfaHlwZXJfdHlw ZSAhPSBYODZfSFlQRVJfTkFUSVZFIHx8IGJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9IWVBFUlZJ U09SKSk7CisrCisrCS8qIFJIRUwgc3VwcG9ydHMgc2luZ2xlIGNwdSBvbiBndWVzdHMgb25seSAq LworKwlpZiAoKCh0b3BvbG9neV9udW1fdGhyZWFkc19wZXJfcGFja2FnZSgpICogX19tYXhfdGhy ZWFkc19wZXJfY29yZSkgPT0gMSkgJiYKKysJICAgICFndWVzdCAmJiAhaXNfa2R1bXBfa2VybmVs KCkpIHsKKysJCXByX2NyaXQoIkRldGVjdGVkIHNpbmdsZSBjcHUgbmF0aXZlIGJvb3QuXG4iKTsK KysJCXByX2NyaXQoIkltcG9ydGFudDogIEluIHRoaXMga2VybmVsLCBzaW5nbGUgdGhyZWFkZWQs IHNpbmdsZSBDUFUgNjQtYml0IHBoeXNpY2FsIHN5c3RlbXMgYXJlIHVuc3VwcG9ydGVkLiIpOwor Kwl9CisrCisrCS8qCisrCSAqIElmIHRoZSBSSEVMIGtlcm5lbCBkb2VzIG5vdCBzdXBwb3J0IHRo aXMgaGFyZHdhcmUsIHRoZSBrZXJuZWwgd2lsbAorKwkgKiBhdHRlbXB0IHRvIGJvb3QsIGJ1dCBu byBzdXBwb3J0IGlzIHByb3ZpZGVkIGZvciB0aGlzIGhhcmR3YXJlCisrCSAqLworKwlzd2l0Y2gg KGJvb3RfY3B1X2RhdGEueDg2X3ZlbmRvcikgeworKwljYXNlIFg4Nl9WRU5ET1JfQU1EOgorKwlj YXNlIFg4Nl9WRU5ET1JfSU5URUw6CisrCQlicmVhazsKKysJZGVmYXVsdDoKKysJCXByX2NyaXQo IkRldGVjdGVkIHByb2Nlc3NvciAlcyAlc1xuIiwKKysJCQlib290X2NwdV9kYXRhLng4Nl92ZW5k b3JfaWQsCisrCQkJYm9vdF9jcHVfZGF0YS54ODZfbW9kZWxfaWQpOworKwkJYnJlYWs7CisrCX0K KysKKysJLyoKKysJICogRHVlIHRvIHRoZSBjb21wbGV4aXR5IG9mIHg4NiBsYXBpYyAmIGlvYXBp YyBlbnVtZXJhdGlvbiwgYW5kIFBDSSBJUlEKKysJICogcm91dGluZywgQUNQSSBpcyByZXF1aXJl ZCBmb3IgeDg2LiAgYWNwaT1vZmYgaXMgYSB2YWxpZCBkZWJ1ZyBrZXJuZWwKKysJICogcGFyYW1l dGVyLCBzbyBqdXN0IHByaW50IG91dCBhIGxvdWQgd2FybmluZyBpbiBjYXNlIHNvbWV0aGluZwor KwkgKiBnb2VzIHdyb25nICh3aGljaCBpcyBtb3N0IG9mIHRoZSB0aW1lKS4KKysJICovCisrCWlm IChhY3BpX2Rpc2FibGVkICYmICFndWVzdCkKKysJCXByX2NyaXQoIkFDUEkgaGFzIGJlZW4gZGlz YWJsZWQgb3IgaXMgbm90IGF2YWlsYWJsZSBvbiB0aGlzIGhhcmR3YXJlLiAgVGhpcyBtYXkgcmVz dWx0IGluIGEgc2luZ2xlIGNwdSBib290LCBpbmNvcnJlY3QgUENJIElSUSByb3V0aW5nLCBvciBi b290IGZhaWx1cmUuXG4iKTsKKysKKysJLyoKKysJICogeDg2XzY0IG1pY3JvYXJjaGl0ZWN0dXJl IGxldmVsczoKKysJICogCWh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1g4Ni02NCNNaWNy b2FyY2hpdGVjdHVyZV9sZXZlbHMKKysJICoKKysJICogUkhFTDkgaGFzIGEgbWluaW11bSBvZiB0 aGUgeDg2XzY0LXYyIG1pY3JvYXJjaGl0ZWN0dXJlCisrCSAqIFJIRUwxMCBoYXMgYSBtaW5pbXVt IG9mIHRoZSB4ODZfNjQtdjMgbWljcm9hcmNoaXRlY3R1cmUKKysJICovCisrCisrCWlmICghYm9v dF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0NYMTYpIHx8IC8qIENNUFhDSEcxNkIgKi8KKysJICAgICFi b290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfTEFIRl9MTSkgfHwgLyogTEFIRi1TQUhGICovCisrCSAg ICAhYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX1BPUENOVCkgfHwKKysJICAgICFib290X2NwdV9o YXMoWDg2X0ZFQVRVUkVfWE1NMykgfHwgLyogU1NFLTMgKi8KKysJICAgICFib290X2NwdV9oYXMo WDg2X0ZFQVRVUkVfWE1NNF8xKSB8fCAvKiBTU0U0XzEgKi8KKysJICAgICFib290X2NwdV9oYXMo WDg2X0ZFQVRVUkVfWE1NNF8yKSB8fCAvKiBTU0U0XzIgKi8KKysJICAgICFib290X2NwdV9oYXMo WDg2X0ZFQVRVUkVfU1NTRTMpKSB7CisrCQltYXJrX2hhcmR3YXJlX2RlcHJlY2F0ZWQoIng4Nl82 NC12MSIsICIlczolcyIsCisrCQkJCQkgYm9vdF9jcHVfZGF0YS54ODZfdmVuZG9yX2lkLCBib290 X2NwdV9kYXRhLng4Nl9tb2RlbF9pZCk7CisrCX0gZWxzZSBpZiAoIWJvb3RfY3B1X2hhcyhYODZf RkVBVFVSRV9BVlgpIHx8CisrCQkgICAhYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0FWWDIpIHx8 CisrCQkgICAhYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0JNSTEpIHx8CisrCQkgICAhYm9vdF9j cHVfaGFzKFg4Nl9GRUFUVVJFX0JNSTIpIHx8CisrCQkgICAhYm9vdF9jcHVfaGFzKFg4Nl9GRUFU VVJFX0YxNkMpIHx8CisrCQkgICAhYm9vdF9jcHVfaGFzKFg4Nl9GRUFUVVJFX0ZNQSkgfHwKKysJ CSAgIC8qIExaQ05UIGlzIG5vdCBleHBsaWNpdGx5IGxpc3RlZCwgYnV0IGFwcGVhcnMgdG8gYmUg cGFpcmVkIHdpdGggQk1JMiAqLworKwkJICAgIWJvb3RfY3B1X2hhcyhYODZfRkVBVFVSRV9NT1ZC RSkgfHwKKysJCSAgICFib290X2NwdV9oYXMoWDg2X0ZFQVRVUkVfWFNBVkUpKSB7CisrCQltYXJr X2hhcmR3YXJlX2RlcHJlY2F0ZWQoIng4Nl82NC12MiIsICIlczolcyIsCisrCQkJCQkgYm9vdF9j cHVfZGF0YS54ODZfdmVuZG9yX2lkLCBib290X2NwdV9kYXRhLng4Nl9tb2RlbF9pZCk7CisrCX0K Kyt9CisrI2Vsc2UKKysjZGVmaW5lIHJoX2NoZWNrX3N1cHBvcnRlZCgpCisrI2VuZGlmCisrCisg LyoKKyAgKiBEdW1wIG91dCBrZXJuZWwgb2Zmc2V0IGluZm9ybWF0aW9uIG9uIHBhbmljLgorICAq LworQEAgLTk5NSw2ICsxMDczLDEzIEBAIHZvaWQgX19pbml0IHNldHVwX2FyY2goY2hhciAqKmNt ZGxpbmVfcCkKKyAJaWYgKGVmaV9lbmFibGVkKEVGSV9CT09UKSkKKyAJCWVmaV9pbml0KCk7Cisg CisrCWVmaV9zZXRfc2VjdXJlX2Jvb3QoYm9vdF9wYXJhbXMuc2VjdXJlX2Jvb3QpOworKworKyNp ZmRlZiBDT05GSUdfTE9DS19ET1dOX0lOX0VGSV9TRUNVUkVfQk9PVAorKwlpZiAoZWZpX2VuYWJs ZWQoRUZJX1NFQ1VSRV9CT09UKSkKKysJCXNlY3VyaXR5X2xvY2tfa2VybmVsX2Rvd24oIkVGSSBT ZWN1cmUgQm9vdCBtb2RlIiwgTE9DS0RPV05fSU5URUdSSVRZX01BWCk7CisrI2VuZGlmCisrCisg CXJlc2VydmVfaWJmdF9yZWdpb24oKTsKKyAJeDg2X2luaXQucmVzb3VyY2VzLmRtaV9zZXR1cCgp OworIAorQEAgLTExNTYsMTkgKzEyNDEsNyBAQCB2b2lkIF9faW5pdCBzZXR1cF9hcmNoKGNoYXIg KipjbWRsaW5lX3ApCisgCS8qIEFsbG9jYXRlIGJpZ2dlciBsb2cgYnVmZmVyICovCisgCXNldHVw X2xvZ19idWYoMSk7CisgCistCWlmIChlZmlfZW5hYmxlZChFRklfQk9PVCkpIHsKKy0JCXN3aXRj aCAoYm9vdF9wYXJhbXMuc2VjdXJlX2Jvb3QpIHsKKy0JCWNhc2UgZWZpX3NlY3VyZWJvb3RfbW9k ZV9kaXNhYmxlZDoKKy0JCQlwcl9pbmZvKCJTZWN1cmUgYm9vdCBkaXNhYmxlZFxuIik7CistCQkJ YnJlYWs7CistCQljYXNlIGVmaV9zZWN1cmVib290X21vZGVfZW5hYmxlZDoKKy0JCQlwcl9pbmZv KCJTZWN1cmUgYm9vdCBlbmFibGVkXG4iKTsKKy0JCQlicmVhazsKKy0JCWRlZmF1bHQ6CistCQkJ cHJfaW5mbygiU2VjdXJlIGJvb3QgY291bGQgbm90IGJlIGRldGVybWluZWRcbiIpOworLQkJCWJy ZWFrOworLQkJfQorLQl9CisrCWVmaV9zZXRfc2VjdXJlX2Jvb3QoYm9vdF9wYXJhbXMuc2VjdXJl X2Jvb3QpOworIAorIAlyZXNlcnZlX2luaXRyZCgpOworIAorQEAgLTEyNzUsNiArMTM0OCw4IEBA IHZvaWQgX19pbml0IHNldHVwX2FyY2goY2hhciAqKmNtZGxpbmVfcCkKKyAJCWVmaV9hcHBseV9t ZW1tYXBfcXVpcmtzKCk7CisgI2VuZGlmCisgCisrCXJoX2NoZWNrX3N1cHBvcnRlZCgpOworKwor IAl1bndpbmRfaW5pdCgpOworIH0KKyAKK2RpZmYgLS1naXQgYS9jcnlwdG8vYWtjaXBoZXIuYyBi L2NyeXB0by9ha2NpcGhlci5jCitpbmRleCA2MzBiYjE5NzM4YmUuLjhkYTdlZWRjZTMxZSAxMDA2 NDQKKy0tLSBhL2NyeXB0by9ha2NpcGhlci5jCisrKysgYi9jcnlwdG8vYWtjaXBoZXIuYworQEAg LTEzOCw4ICsxMzgsNyBAQCBpbnQgY3J5cHRvX3JlZ2lzdGVyX2FrY2lwaGVyKHN0cnVjdCBha2Np cGhlcl9hbGcgKmFsZykKKyAKKyAJaWYgKCFhbGctPmVuY3J5cHQpCisgCQlhbGctPmVuY3J5cHQg PSBha2NpcGhlcl9kZWZhdWx0X29wOworLQlpZiAoIWFsZy0+ZGVjcnlwdCkKKy0JCWFsZy0+ZGVj cnlwdCA9IGFrY2lwaGVyX2RlZmF1bHRfb3A7CisrCWFsZy0+ZGVjcnlwdCA9IGFrY2lwaGVyX2Rl ZmF1bHRfb3A7CisgCWlmICghYWxnLT5zZXRfcHJpdl9rZXkpCisgCQlhbGctPnNldF9wcml2X2tl eSA9IGFrY2lwaGVyX2RlZmF1bHRfc2V0X2tleTsKKyAKK2RpZmYgLS1naXQgYS9jcnlwdG8vZGgu YyBiL2NyeXB0by9kaC5jCitpbmRleCA3YWQ0NzY4NzE2YzguLjAxY2NjMjRkYjA3NCAxMDA2NDQK Ky0tLSBhL2NyeXB0by9kaC5jCisrKysgYi9jcnlwdG8vZGguYworQEAgLTIyNywxMCArMjI3LDM1 IEBAIHN0YXRpYyBpbnQgZGhfY29tcHV0ZV92YWx1ZShzdHJ1Y3Qga3BwX3JlcXVlc3QgKnJlcSkK KyAKKyAJCS8qIFNQODAwLTU2QSByZXYgMyA1LjYuMi4xLjMga2V5IGNoZWNrICovCisgCQl9IGVs c2UgeworKwkJCU1QSSB2YWxfcGN0OworKworIAkJCWlmIChkaF9pc19wdWJrZXlfdmFsaWQoY3R4 LCB2YWwpKSB7CisgCQkJCXJldCA9IC1FQUdBSU47CisgCQkJCWdvdG8gZXJyX2ZyZWVfdmFsOwor IAkJCX0KKysKKysJCQkvKgorKwkJCSAqIFNQODAwLTU2QXJldjMsIDUuNi4yLjEuNDogKCJPd25l ciBBc3N1cmFuY2UKKysJCQkgKiBvZiBQYWlyLXdpc2UgQ29uc2lzdGVuY3kiKTogcmVjb21wdXRl IHRoZQorKwkJCSAqIHB1YmxpYyBrZXkgYW5kIGNoZWNrIGlmIHRoZSByZXN1bHRzIG1hdGNoLgor KwkJCSAqLworKwkJCXZhbF9wY3QgPSBtcGlfYWxsb2MoMCk7CisrCQkJaWYgKCF2YWxfcGN0KSB7 CisrCQkJCXJldCA9IC1FTk9NRU07CisrCQkJCWdvdG8gZXJyX2ZyZWVfdmFsOworKwkJCX0KKysK KysJCQlyZXQgPSBfY29tcHV0ZV92YWwoY3R4LCBiYXNlLCB2YWxfcGN0KTsKKysJCQlpZiAocmV0 KSB7CisrCQkJCW1waV9mcmVlKHZhbF9wY3QpOworKwkJCQlnb3RvIGVycl9mcmVlX3ZhbDsKKysJ CQl9CisrCisrCQkJaWYgKG1waV9jbXAodmFsLCB2YWxfcGN0KSAhPSAwKSB7CisrCQkJCWZpcHNf ZmFpbF9ub3RpZnkoKTsKKysJCQkJcGFuaWMoImRoOiBwYWlyLXdpc2UgY29uc2lzdGVuY3kgdGVz dCBmYWlsZWRcbiIpOworKwkJCX0KKysJCQltcGlfZnJlZSh2YWxfcGN0KTsKKyAJCX0KKyAJfQor IAorZGlmZiAtLWdpdCBhL2NyeXB0by9zZXFpdi5jIGIvY3J5cHRvL3NlcWl2LmMKK2luZGV4IDY3 OGJiNDE0NWQ3OC4uZmNjMDU5ZTdkM2RiIDEwMDY0NAorLS0tIGEvY3J5cHRvL3NlcWl2LmMKKysr KyBiL2NyeXB0by9zZXFpdi5jCitAQCAtMTIzLDYgKzEyMywxOSBAQCBzdGF0aWMgaW50IHNlcWl2 X2FlYWRfZGVjcnlwdChzdHJ1Y3QgYWVhZF9yZXF1ZXN0ICpyZXEpCisgCXJldHVybiBjcnlwdG9f YWVhZF9kZWNyeXB0KHN1YnJlcSk7CisgfQorIAorK3N0YXRpYyBpbnQgYWVhZF9pbml0X3NlcWl2 KHN0cnVjdCBjcnlwdG9fYWVhZCAqYWVhZCkKKyt7CisrCWludCBlcnI7CisrCisrCWVyciA9IGFl YWRfaW5pdF9nZW5pdihhZWFkKTsKKysJaWYgKGVycikKKysJCXJldHVybiBlcnI7CisrCisrCWNy eXB0b19hZWFkX3NldF9mbGFncyhhZWFkLCBDUllQVE9fVEZNX0ZJUFNfQ09NUExJQU5DRSk7Cisr CisrCXJldHVybiAwOworK30KKysKKyBzdGF0aWMgaW50IHNlcWl2X2FlYWRfY3JlYXRlKHN0cnVj dCBjcnlwdG9fdGVtcGxhdGUgKnRtcGwsIHN0cnVjdCBydGF0dHIgKip0YikKKyB7CisgCXN0cnVj dCBhZWFkX2luc3RhbmNlICppbnN0OworQEAgLTE0MCw3ICsxNTMsNyBAQCBzdGF0aWMgaW50IHNl cWl2X2FlYWRfY3JlYXRlKHN0cnVjdCBjcnlwdG9fdGVtcGxhdGUgKnRtcGwsIHN0cnVjdCBydGF0 dHIgKip0YikKKyAJaW5zdC0+YWxnLmVuY3J5cHQgPSBzZXFpdl9hZWFkX2VuY3J5cHQ7CisgCWlu c3QtPmFsZy5kZWNyeXB0ID0gc2VxaXZfYWVhZF9kZWNyeXB0OworIAorLQlpbnN0LT5hbGcuaW5p dCA9IGFlYWRfaW5pdF9nZW5pdjsKKysJaW5zdC0+YWxnLmluaXQgPSBhZWFkX2luaXRfc2VxaXY7 CisgCWluc3QtPmFsZy5leGl0ID0gYWVhZF9leGl0X2dlbml2OworIAorIAlpbnN0LT5hbGcuYmFz ZS5jcmFfY3R4c2l6ZSA9IHNpemVvZihzdHJ1Y3QgYWVhZF9nZW5pdl9jdHgpOworZGlmZiAtLWdp dCBhL2NyeXB0by9zaWcuYyBiL2NyeXB0by9zaWcuYworaW5kZXggN2QyMDQ4ZGE1YzNhLi42YjRl MjE2M2ZjYzUgMTAwNjQ0CistLS0gYS9jcnlwdG8vc2lnLmMKKysrKyBiL2NyeXB0by9zaWcuYwor QEAgLTExMiw4ICsxMTIsNyBAQCBzdGF0aWMgaW50IHNpZ19wcmVwYXJlX2FsZyhzdHJ1Y3Qgc2ln X2FsZyAqYWxnKQorIHsKKyAJc3RydWN0IGNyeXB0b19hbGcgKmJhc2UgPSAmYWxnLT5iYXNlOwor IAorLQlpZiAoIWFsZy0+c2lnbikKKy0JCWFsZy0+c2lnbiA9IHNpZ19kZWZhdWx0X3NpZ247Cisr CWFsZy0+c2lnbiA9IHNpZ19kZWZhdWx0X3NpZ247CisgCWlmICghYWxnLT52ZXJpZnkpCisgCQlh bGctPnZlcmlmeSA9IHNpZ19kZWZhdWx0X3ZlcmlmeTsKKyAJaWYgKCFhbGctPnNldF9wcml2X2tl eSkKK2RpZmYgLS1naXQgYS9jcnlwdG8vdGVzdG1nci5jIGIvY3J5cHRvL3Rlc3RtZ3IuYworaW5k ZXggNDk1ODIxMWZiZmE5Li5lZTZkMzQ4ODU2OTYgMTAwNjQ0CistLS0gYS9jcnlwdG8vdGVzdG1n ci5jCisrKysgYi9jcnlwdG8vdGVzdG1nci5jCitAQCAtMzgzMSw3ICszODMxLDcgQEAgc3RhdGlj IGludCB0ZXN0X2FrY2lwaGVyX29uZShzdHJ1Y3QgY3J5cHRvX2FrY2lwaGVyICp0Zm0sCisgCSAq IERvbid0IGludm9rZSBkZWNyeXB0IHRlc3Qgd2hpY2ggcmVxdWlyZXMgYSBwcml2YXRlIGtleQor IAkgKiBmb3IgdmVjdG9ycyB3aXRoIG9ubHkgYSBwdWJsaWMga2V5LgorIAkgKi8KKy0JaWYgKHZl Y3MtPnB1YmxpY19rZXlfdmVjKSB7CisrCWlmICgxIHx8IHZlY3MtPnB1YmxpY19rZXlfdmVjKSB7 CisgCQllcnIgPSAwOworIAkJZ290byBmcmVlX2FsbDsKKyAJfQorQEAgLTM5NjcsNyArMzk2Nyw3 IEBAIHN0YXRpYyBpbnQgdGVzdF9zaWdfb25lKHN0cnVjdCBjcnlwdG9fc2lnICp0Zm0sIGNvbnN0 IHN0cnVjdCBzaWdfdGVzdHZlYyAqdmVjcykKKyAJICogRG9uJ3QgaW52b2tlIHNpZ24gdGVzdCAo d2hpY2ggcmVxdWlyZXMgYSBwcml2YXRlIGtleSkKKyAJICogZm9yIHZlY3RvcnMgd2l0aCBvbmx5 IGEgcHVibGljIGtleS4KKyAJICovCistCWlmICh2ZWNzLT5wdWJsaWNfa2V5X3ZlYykKKysJaWYg KDEgfHwgdmVjcy0+cHVibGljX2tleV92ZWMpCisgCQlyZXR1cm4gMDsKKyAKKyAJc2lnX3NpemUg PSBjcnlwdG9fc2lnX21heHNpemUodGZtKTsKK0BAIC00NzkwLDE0ICs0NzkwLDEyIEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgYWxnX3Rlc3RfZGVzYyBhbGdfdGVzdF9kZXNjc1tdID0geworIAl9LCB7 CisgCQkuYWxnID0gImVjZGgtbmlzdC1wMjU2IiwKKyAJCS50ZXN0ID0gYWxnX3Rlc3Rfa3BwLAor LQkJLmZpcHNfYWxsb3dlZCA9IDEsCisgCQkuc3VpdGUgPSB7CisgCQkJLmtwcCA9IF9fVkVDUyhl Y2RoX3AyNTZfdHZfdGVtcGxhdGUpCisgCQl9CisgCX0sIHsKKyAJCS5hbGcgPSAiZWNkaC1uaXN0 LXAzODQiLAorIAkJLnRlc3QgPSBhbGdfdGVzdF9rcHAsCistCQkuZmlwc19hbGxvd2VkID0gMSwK KyAJCS5zdWl0ZSA9IHsKKyAJCQkua3BwID0gX19WRUNTKGVjZGhfcDM4NF90dl90ZW1wbGF0ZSkK KyAJCX0KK2RpZmYgLS1naXQgYS9kcml2ZXJzL2FjcGkvYXBlaS9oZXN0LmMgYi9kcml2ZXJzL2Fj cGkvYXBlaS9oZXN0LmMKK2luZGV4IDIwZDc1NzY4N2UzZC4uOTBhMTNmMjBmMDUyIDEwMDY0NAor LS0tIGEvZHJpdmVycy9hY3BpL2FwZWkvaGVzdC5jCisrKysgYi9kcml2ZXJzL2FjcGkvYXBlaS9o ZXN0LmMKK0BAIC0xNDIsNiArMTQyLDE0IEBAIHN0YXRpYyBpbnQgYXBlaV9oZXN0X3BhcnNlKGFw ZWlfaGVzdF9mdW5jX3QgZnVuYywgdm9pZCAqZGF0YSkKKyAJaWYgKGhlc3RfZGlzYWJsZSB8fCAh aGVzdF90YWIpCisgCQlyZXR1cm4gLUVJTlZBTDsKKyAKKysjaWZkZWYgQ09ORklHX0FSTTY0Cisr CS8qIElnbm9yZSBicm9rZW4gZmlybXdhcmUgKi8KKysJaWYgKCFzdHJuY21wKGhlc3RfdGFiLT5o ZWFkZXIub2VtX2lkLCAiSFBFICAgIiwgNikgJiYKKysJICAgICFzdHJuY21wKGhlc3RfdGFiLT5o ZWFkZXIub2VtX3RhYmxlX2lkLCAiUHJvTGlhbnQiLCA4KSAmJgorKwkgICAgTUlEUl9JTVBMRU1F TlRPUihyZWFkX2NwdWlkX2lkKCkpID09IEFSTV9DUFVfSU1QX0FQTSkKKysJCXJldHVybiAtRUlO VkFMOworKyNlbmRpZgorKworIAloZXN0X2hkciA9IChzdHJ1Y3QgYWNwaV9oZXN0X2hlYWRlciAq KShoZXN0X3RhYiArIDEpOworIAlmb3IgKGkgPSAwOyBpIDwgaGVzdF90YWItPmVycm9yX3NvdXJj ZV9jb3VudDsgaSsrKSB7CisgCQlsZW4gPSBoZXN0X2VzcmNfbGVuKGhlc3RfaGRyKTsKK2RpZmYg LS1naXQgYS9kcml2ZXJzL2FjcGkvaXJxLmMgYi9kcml2ZXJzL2FjcGkvaXJxLmMKK2luZGV4IGQx NTk1MTU2Yzg2YS4uOTQ4NTIxMmYxYTZkIDEwMDY0NAorLS0tIGEvZHJpdmVycy9hY3BpL2lycS5j CisrKysgYi9kcml2ZXJzL2FjcGkvaXJxLmMKK0BAIC0xNDMsNiArMTQzLDcgQEAgc3RydWN0IGFj cGlfaXJxX3BhcnNlX29uZV9jdHggeworIAl1bnNpZ25lZCBpbnQgaW5kZXg7CisgCXVuc2lnbmVk IGxvbmcgKnJlc19mbGFnczsKKyAJc3RydWN0IGlycV9md3NwZWMgKmZ3c3BlYzsKKysJYm9vbCBz a2lwX3Byb2R1Y2VyX2NoZWNrOworIH07CisgCisgLyoqCitAQCAtMjE2LDcgKzIxNyw4IEBAIHN0 YXRpYyBhY3BpX3N0YXR1cyBhY3BpX2lycV9wYXJzZV9vbmVfY2Ioc3RydWN0IGFjcGlfcmVzb3Vy Y2UgKmFyZXMsCisgCQlyZXR1cm4gQUVfQ1RSTF9URVJNSU5BVEU7CisgCWNhc2UgQUNQSV9SRVNP VVJDRV9UWVBFX0VYVEVOREVEX0lSUToKKyAJCWVpcnEgPSAmYXJlcy0+ZGF0YS5leHRlbmRlZF9p cnE7CistCQlpZiAoZWlycS0+cHJvZHVjZXJfY29uc3VtZXIgPT0gQUNQSV9QUk9EVUNFUikKKysJ CWlmICghY3R4LT5za2lwX3Byb2R1Y2VyX2NoZWNrICYmCisrCQkgICAgZWlycS0+cHJvZHVjZXJf Y29uc3VtZXIgPT0gQUNQSV9QUk9EVUNFUikKKyAJCQlyZXR1cm4gQUVfT0s7CisgCQlpZiAoY3R4 LT5pbmRleCA+PSBlaXJxLT5pbnRlcnJ1cHRfY291bnQpIHsKKyAJCQljdHgtPmluZGV4IC09IGVp cnEtPmludGVycnVwdF9jb3VudDsKK0BAIC0yNTIsOCArMjU0LDE5IEBAIHN0YXRpYyBhY3BpX3N0 YXR1cyBhY3BpX2lycV9wYXJzZV9vbmVfY2Ioc3RydWN0IGFjcGlfcmVzb3VyY2UgKmFyZXMsCisg c3RhdGljIGludCBhY3BpX2lycV9wYXJzZV9vbmUoYWNwaV9oYW5kbGUgaGFuZGxlLCB1bnNpZ25l ZCBpbnQgaW5kZXgsCisgCQkJICAgICAgc3RydWN0IGlycV9md3NwZWMgKmZ3c3BlYywgdW5zaWdu ZWQgbG9uZyAqZmxhZ3MpCisgeworLQlzdHJ1Y3QgYWNwaV9pcnFfcGFyc2Vfb25lX2N0eCBjdHgg PSB7IC1FSU5WQUwsIGluZGV4LCBmbGFncywgZndzcGVjIH07CisrCXN0cnVjdCBhY3BpX2lycV9w YXJzZV9vbmVfY3R4IGN0eCA9IHsgLUVJTlZBTCwgaW5kZXgsIGZsYWdzLCBmd3NwZWMsIGZhbHNl IH07CisgCisrCS8qCisrCSAqIEZpcm13YXJlIG9uIGFybTY0LWJhc2VkIEhQRSBtNDAwIHBsYXRm b3JtIGluY29ycmVjdGx5IG1hcmtzCisrCSAqIGl0cyBVQVJUIGludGVycnVwdCBhcyBBQ1BJX1BS T0RVQ0VSIHJhdGhlciB0aGFuIEFDUElfQ09OU1VNRVIuCisrCSAqIERvbid0IGRvIHRoZSBwcm9k dWNlci9jb25zdW1lciBjaGVjayBmb3IgdGhhdCBkZXZpY2UuCisrCSAqLworKwlpZiAoSVNfRU5B QkxFRChDT05GSUdfQVJNNjQpKSB7CisrCQlzdHJ1Y3QgYWNwaV9kZXZpY2UgKmFkZXYgPSBhY3Bp X2dldF9hY3BpX2RldihoYW5kbGUpOworKworKwkJaWYgKGFkZXYgJiYgIXN0cmNtcChhY3BpX2Rl dmljZV9oaWQoYWRldiksICJBUE1DMEQwOCIpKQorKwkJCWN0eC5za2lwX3Byb2R1Y2VyX2NoZWNr ID0gdHJ1ZTsKKysJfQorIAlhY3BpX3dhbGtfcmVzb3VyY2VzKGhhbmRsZSwgTUVUSE9EX05BTUVf X0NSUywgYWNwaV9pcnFfcGFyc2Vfb25lX2NiLCAmY3R4KTsKKyAJcmV0dXJuIGN0eC5yYzsKKyB9 CitkaWZmIC0tZ2l0IGEvZHJpdmVycy9hY3BpL3NjYW4uYyBiL2RyaXZlcnMvYWNwaS9zY2FuLmMK K2luZGV4IDlhN2FjMmViOWNlMC4uNjU1NmMzZDdiMjY5IDEwMDY0NAorLS0tIGEvZHJpdmVycy9h Y3BpL3NjYW4uYworKysrIGIvZHJpdmVycy9hY3BpL3NjYW4uYworQEAgLTE3OTQsNiArMTc5NCwx NSBAQCBzdGF0aWMgYm9vbCBhY3BpX2RldmljZV9lbnVtZXJhdGlvbl9ieV9wYXJlbnQoc3RydWN0 IGFjcGlfZGV2aWNlICpkZXZpY2UpCisgCWlmICghYWNwaV9tYXRjaF9kZXZpY2VfaWRzKGRldmlj ZSwgaWdub3JlX3NlcmlhbF9idXNfaWRzKSkKKyAJCXJldHVybiBmYWxzZTsKKyAKKysJLyoKKysJ ICogRmlybXdhcmUgb24gc29tZSBhcm02NCBYLUdlbmUgcGxhdGZvcm1zIHdpbGwgbWFrZSB0aGUg VUFSVAorKwkgKiBkZXZpY2UgYXBwZWFyIGFzIGJvdGggYSBVQVJUIGFuZCBhIHNsYXZlIG9mIHRo YXQgVUFSVC4gSnVzdAorKwkgKiBiYWlsIG91dCBoZXJlIGZvciBYLUdlbmUgVUFSVHMuCisrCSAq LworKwlpZiAoSVNfRU5BQkxFRChDT05GSUdfQVJNNjQpICYmCisrCSAgICAhc3RyY21wKGFjcGlf ZGV2aWNlX2hpZChkZXZpY2UpLCAiQVBNQzBEMDgiKSkKKysJCXJldHVybiBmYWxzZTsKKysKKyAJ SU5JVF9MSVNUX0hFQUQoJnJlc291cmNlX2xpc3QpOworIAlhY3BpX2Rldl9nZXRfcmVzb3VyY2Vz KGRldmljZSwgJnJlc291cmNlX2xpc3QsCisgCQkJICAgICAgIGFjcGlfY2hlY2tfc2VyaWFsX2J1 c19zbGF2ZSwKK2RpZmYgLS1naXQgYS9kcml2ZXJzL2F0YS9saWJhaGNpLmMgYi9kcml2ZXJzL2F0 YS9saWJhaGNpLmMKK2luZGV4IDZkNzJlYjAxN2I0OS4uMGE2NzAxZWI4ZDM3IDEwMDY0NAorLS0t IGEvZHJpdmVycy9hdGEvbGliYWhjaS5jCisrKysgYi9kcml2ZXJzL2F0YS9saWJhaGNpLmMKK0BA IC03MjcsNiArNzI3LDI0IEBAIGludCBhaGNpX3N0b3BfZW5naW5lKHN0cnVjdCBhdGFfcG9ydCAq YXApCisgCXRtcCAmPSB+UE9SVF9DTURfU1RBUlQ7CisgCXdyaXRlbCh0bXAsIHBvcnRfbW1pbyAr IFBPUlRfQ01EKTsKKyAKKysjaWZkZWYgQ09ORklHX0FSTTY0CisrCS8qIFJldiBBeCBvZiBDYXZp dW0gQ045OVhYIG5lZWRzIGEgaGFjayBmb3IgcG9ydCBzdG9wICovCisrCWlmIChkZXZfaXNfcGNp KGFwLT5ob3N0LT5kZXYpICYmCisrCSAgICB0b19wY2lfZGV2KGFwLT5ob3N0LT5kZXYpLT52ZW5k b3IgPT0gMHgxNGU0ICYmCisrCSAgICB0b19wY2lfZGV2KGFwLT5ob3N0LT5kZXYpLT5kZXZpY2Ug PT0gMHg5MDI3ICYmCisrCSAgICBtaWRyX2lzX2NwdV9tb2RlbF9yYW5nZShyZWFkX2NwdWlkX2lk KCksCisrCQkJTUlEUl9DUFVfTU9ERUwoQVJNX0NQVV9JTVBfQlJDTSwgQlJDTV9DUFVfUEFSVF9W VUxDQU4pLAorKwkJCU1JRFJfQ1BVX1ZBUl9SRVYoMCwgMCksCisrCQkJTUlEUl9DUFVfVkFSX1JF VigwLCBNSURSX1JFVklTSU9OX01BU0spKSkgeworKwkJdG1wID0gcmVhZGwoaHByaXYtPm1taW8g KyAweDgwMDApOworKwkJdWRlbGF5KDEwMCk7CisrCQl3cml0ZWwodG1wIHwgKDEgPDwgMjYpLCBo cHJpdi0+bW1pbyArIDB4ODAwMCk7CisrCQl1ZGVsYXkoMTAwKTsKKysJCXdyaXRlbCh0bXAgJiB+ KDEgPDwgMjYpLCBocHJpdi0+bW1pbyArIDB4ODAwMCk7CisrCQlkZXZfd2FybihhcC0+aG9zdC0+ ZGV2LCAiQ045OVhYIFNBVEEgcmVzZXQgd29ya2Fyb3VuZCBhcHBsaWVkXG4iKTsKKysJfQorKyNl bmRpZgorKworIAkvKiB3YWl0IGZvciBlbmdpbmUgdG8gc3RvcC4gVGhpcyBjb3VsZCBiZSBhcyBs b25nIGFzIDUwMCBtc2VjICovCisgCXRtcCA9IGF0YV93YWl0X3JlZ2lzdGVyKGFwLCBwb3J0X21t aW8gKyBQT1JUX0NNRCwKKyAJCQkJUE9SVF9DTURfTElTVF9PTiwgUE9SVF9DTURfTElTVF9PTiwg MSwgNTAwKTsKK2RpZmYgLS1naXQgYS9kcml2ZXJzL2NoYXIvaXBtaS9pcG1pX2RtaS5jIGIvZHJp dmVycy9jaGFyL2lwbWkvaXBtaV9kbWkuYworaW5kZXggNTA1ZTMyOTExYzM0Li4yNmY3ZWUwY2Nm NDAgMTAwNjQ0CistLS0gYS9kcml2ZXJzL2NoYXIvaXBtaS9pcG1pX2RtaS5jCisrKysgYi9kcml2 ZXJzL2NoYXIvaXBtaS9pcG1pX2RtaS5jCitAQCAtMjE1LDYgKzIxNSwyMSBAQCBzdGF0aWMgaW50 IF9faW5pdCBzY2FuX2Zvcl9kbWlfaXBtaSh2b2lkKQorIHsKKyAJY29uc3Qgc3RydWN0IGRtaV9k ZXZpY2UgKmRldiA9IE5VTEw7CisgCisrI2lmZGVmIENPTkZJR19BUk02NAorKwkvKiBSSEVMLW9u bHkKKysJICogSWYgdGhpcyBpcyBBUk0tYmFzZWQgSFBFIG00MDAsIHJldHVybiBub3csIGJlY2F1 c2UgdGhhdCBwbGF0Zm9ybQorKwkgKiByZXBvcnRzIHRoZSBob3N0LXNpZGUgaXBtaSBhZGRyZXNz IGFzIGludGVsIHBvcnQtaW8gc3BhY2UsIHdoaWNoCisrCSAqIGRvZXMgbm90IGV4aXN0IGluIHRo ZSBBUk0gYXJjaGl0ZWN0dXJlLgorKwkgKi8KKysJY29uc3QgY2hhciAqZG1pc3RyID0gZG1pX2dl dF9zeXN0ZW1faW5mbyhETUlfUFJPRFVDVF9OQU1FKTsKKysKKysJaWYgKGRtaXN0ciAmJiAoc3Ry Y21wKCJQcm9MaWFudCBtNDAwIFNlcnZlciIsIGRtaXN0cikgPT0gMCkpIHsKKysJCXByX2RlYnVn KCIlcyBkb2VzIG5vdCBzdXBwb3J0IGhvc3QgaXBtaVxuIiwgZG1pc3RyKTsKKysJCXJldHVybiAw OworKwl9CisrCS8qIEVORCBSSEVMLW9ubHkgKi8KKysjZW5kaWYKKysKKyAJd2hpbGUgKChkZXYg PSBkbWlfZmluZF9kZXZpY2UoRE1JX0RFVl9UWVBFX0lQTUksIE5VTEwsIGRldikpKQorIAkJZG1p X2RlY29kZV9pcG1pKChjb25zdCBzdHJ1Y3QgZG1pX2hlYWRlciAqKSBkZXYtPmRldmljZV9kYXRh KTsKKyAKK2RpZmYgLS1naXQgYS9kcml2ZXJzL2NoYXIvaXBtaS9pcG1pX21zZ2hhbmRsZXIuYyBi L2RyaXZlcnMvY2hhci9pcG1pL2lwbWlfbXNnaGFuZGxlci5jCitpbmRleCBhYjRjODVmM2Q2ZmUu LjkyZGUxMTY1ZjZlZiAxMDA2NDQKKy0tLSBhL2RyaXZlcnMvY2hhci9pcG1pL2lwbWlfbXNnaGFu ZGxlci5jCisrKysgYi9kcml2ZXJzL2NoYXIvaXBtaS9pcG1pX21zZ2hhbmRsZXIuYworQEAgLTM0 LDYgKzM0LDcgQEAKKyAjaW5jbHVkZSA8bGludXgvdXVpZC5oPgorICNpbmNsdWRlIDxsaW51eC9u b3NwZWMuaD4KKyAjaW5jbHVkZSA8bGludXgvdm1hbGxvYy5oPgorKyNpbmNsdWRlIDxsaW51eC9k bWkuaD4KKyAjaW5jbHVkZSA8bGludXgvZGVsYXkuaD4KKyAKKyAjZGVmaW5lIElQTUlfRFJJVkVS X1ZFUlNJT04gIjM5LjIiCitAQCAtNTY0Myw4ICs1NjQ0LDIxIEBAIHN0YXRpYyBpbnQgX19pbml0 IGlwbWlfaW5pdF9tc2doYW5kbGVyX21vZCh2b2lkKQorIHsKKyAJaW50IHJ2OworIAorLQlwcl9p bmZvKCJ2ZXJzaW9uICIgSVBNSV9EUklWRVJfVkVSU0lPTiAiXG4iKTsKKysjaWZkZWYgQ09ORklH X0FSTTY0CisrCS8qIFJIRUwtb25seQorKwkgKiBJZiB0aGlzIGlzIEFSTS1iYXNlZCBIUEUgbTQw MCwgcmV0dXJuIG5vdywgYmVjYXVzZSB0aGF0IHBsYXRmb3JtCisrCSAqIHJlcG9ydHMgdGhlIGhv c3Qtc2lkZSBpcG1pIGFkZHJlc3MgYXMgaW50ZWwgcG9ydC1pbyBzcGFjZSwgd2hpY2gKKysJICog ZG9lcyBub3QgZXhpc3QgaW4gdGhlIEFSTSBhcmNoaXRlY3R1cmUuCisrCSAqLworKwljb25zdCBj aGFyICpkbWlzdHIgPSBkbWlfZ2V0X3N5c3RlbV9pbmZvKERNSV9QUk9EVUNUX05BTUUpOworIAor KwlpZiAoZG1pc3RyICYmIChzdHJjbXAoIlByb0xpYW50IG00MDAgU2VydmVyIiwgZG1pc3RyKSA9 PSAwKSkgeworKwkJcHJfZGVidWcoIiVzIGRvZXMgbm90IHN1cHBvcnQgaG9zdCBpcG1pXG4iLCBk bWlzdHIpOworKwkJcmV0dXJuIC1FTk9TWVM7CisrCX0KKysJLyogRU5EIFJIRUwtb25seSAqLwor KyNlbmRpZgorKwlwcl9pbmZvKCJ2ZXJzaW9uICIgSVBNSV9EUklWRVJfVkVSU0lPTiAiXG4iKTsK KyAJbXV0ZXhfbG9jaygmaXBtaV9pbnRlcmZhY2VzX211dGV4KTsKKyAJcnYgPSBpcG1pX3JlZ2lz dGVyX2RyaXZlcigpOworIAltdXRleF91bmxvY2soJmlwbWlfaW50ZXJmYWNlc19tdXRleCk7Citk aWZmIC0tZ2l0IGEvZHJpdmVycy9jaGFyL3JhbmRvbS5jIGIvZHJpdmVycy9jaGFyL3JhbmRvbS5j CitpbmRleCBiNGRhMWZiOTc2YzEuLjFlMTEyZTJiNDA1YiAxMDA2NDQKKy0tLSBhL2RyaXZlcnMv Y2hhci9yYW5kb20uYworKysrIGIvZHJpdmVycy9jaGFyL3JhbmRvbS5jCitAQCAtNTEsOSArNTEs MTEgQEAKKyAjaW5jbHVkZSA8bGludXgvY29tcGxldGlvbi5oPgorICNpbmNsdWRlIDxsaW51eC91 dWlkLmg+CisgI2luY2x1ZGUgPGxpbnV4L3VhY2Nlc3MuaD4KKysjaW5jbHVkZSA8bGludXgvcmN1 cGRhdGUuaD4KKyAjaW5jbHVkZSA8bGludXgvc3VzcGVuZC5oPgorICNpbmNsdWRlIDxsaW51eC9z aXBoYXNoLmg+CisgI2luY2x1ZGUgPGxpbnV4L3NjaGVkL2lzb2xhdGlvbi5oPgorKyNpbmNsdWRl IDxsaW51eC9maXBzLmg+CisgI2luY2x1ZGUgPGNyeXB0by9jaGFjaGEuaD4KKyAjaW5jbHVkZSA8 Y3J5cHRvL2JsYWtlMnMuaD4KKyAjaW5jbHVkZSA8dmRzby9kYXRhcGFnZS5oPgorQEAgLTMyMCw2 ICszMjIsMTEgQEAgc3RhdGljIHZvaWQgY3JuZ19mYXN0X2tleV9lcmFzdXJlKHU4IGtleVtDSEFD SEFfS0VZX1NJWkVdLAorIAltZW16ZXJvX2V4cGxpY2l0KGZpcnN0X2Jsb2NrLCBzaXplb2YoZmly c3RfYmxvY2spKTsKKyB9CisgCisrLyoKKysgKiBIb29rIGZvciBleHRlcm5hbCBSTkcuCisrICov Cisrc3RhdGljIGNvbnN0IHN0cnVjdCByYW5kb21fZXh0cm5nIF9fcmN1ICpleHRybmc7CisrCisg LyoKKyAgKiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYSBDaGFDaGEgc3RhdGUgdGhhdCB5b3UgbWF5 IHVzZSBmb3IgZ2VuZXJhdGluZworICAqIHJhbmRvbSBkYXRhLiBJdCBhbHNvIHJldHVybnMgdXAg dG8gMzIgYnl0ZXMgb24gaXRzIG93biBvZiByYW5kb20gZGF0YQorQEAgLTczMiw3ICs3MzksOCBA QCBzdGF0aWMgdm9pZCBfX2NvbGQgX2NyZWRpdF9pbml0X2JpdHMoc2l6ZV90IGJpdHMpCisgCQkJ cXVldWVfd29yayhzeXN0ZW1fZGZsX3dxLCAmc2V0X3JlYWR5KTsKKyAJCWF0b21pY19ub3RpZmll cl9jYWxsX2NoYWluKCZyYW5kb21fcmVhZHlfbm90aWZpZXIsIDAsIE5VTEwpOworIAkJaWYgKElT X0VOQUJMRUQoQ09ORklHX1ZEU09fR0VUUkFORE9NKSkKKy0JCQlXUklURV9PTkNFKHZkc29fa19y bmdfZGF0YS0+aXNfcmVhZHksIHRydWUpOworKwkJCWlmICghZmlwc19lbmFibGVkKQorKwkJCQlX UklURV9PTkNFKHZkc29fa19ybmdfZGF0YS0+aXNfcmVhZHksIHRydWUpOworIAkJd2FrZV91cF9p bnRlcnJ1cHRpYmxlKCZjcm5nX2luaXRfd2FpdCk7CisgCQlraWxsX2Zhc3luYygmZmFzeW5jLCBT SUdJTywgUE9MTF9JTik7CisgCQlwcl9ub3RpY2UoImNybmcgaW5pdCBkb25lXG4iKTsKK0BAIC03 NTEsNiArNzU5LDkgQEAgc3RhdGljIHZvaWQgX19jb2xkIF9jcmVkaXRfaW5pdF9iaXRzKHNpemVf dCBiaXRzKQorIH0KKyAKKyAKKytzdGF0aWMgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBl eHRybmdfcmFuZG9tX2ZvcHM7Cisrc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMg ZXh0cm5nX3VyYW5kb21fZm9wczsKKysKKyAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICAqCisgICogRW50cm9w eSBjb2xsZWN0aW9uIHJvdXRpbmVzLgorQEAgLTk2Nyw2ICs5NzgsMTkgQEAgdm9pZCBfX2luaXQg YWRkX2Jvb3Rsb2FkZXJfcmFuZG9tbmVzcyhjb25zdCB2b2lkICpidWYsIHNpemVfdCBsZW4pCisg CQljcmVkaXRfaW5pdF9iaXRzKGxlbiAqIDgpOworIH0KKyAKKyt2b2lkIHJhbmRvbV9yZWdpc3Rl cl9leHRybmcoY29uc3Qgc3RydWN0IHJhbmRvbV9leHRybmcgKnJuZykKKyt7CisrCXJjdV9hc3Np Z25fcG9pbnRlcihleHRybmcsIHJuZyk7CisrfQorK0VYUE9SVF9TWU1CT0xfR1BMKHJhbmRvbV9y ZWdpc3Rlcl9leHRybmcpOworKworK3ZvaWQgcmFuZG9tX3VucmVnaXN0ZXJfZXh0cm5nKHZvaWQp CisreworKwlSQ1VfSU5JVF9QT0lOVEVSKGV4dHJuZywgTlVMTCk7CisrCXN5bmNocm9uaXplX3Jj dSgpOworK30KKytFWFBPUlRfU1lNQk9MX0dQTChyYW5kb21fdW5yZWdpc3Rlcl9leHRybmcpOwor KworICNpZiBJU19FTkFCTEVEKENPTkZJR19WTUdFTklEKQorIHN0YXRpYyBCTE9DS0lOR19OT1RJ RklFUl9IRUFEKHZtZm9ya19jaGFpbik7CisgCitAQCAtMTM4MSw2ICsxNDA1LDcgQEAgU1lTQ0FM TF9ERUZJTkUzKGdldHJhbmRvbSwgY2hhciBfX3VzZXIgKiwgdWJ1Ziwgc2l6ZV90LCBsZW4sIHVu c2lnbmVkIGludCwgZmxhZ3MKKyB7CisgCXN0cnVjdCBpb3ZfaXRlciBpdGVyOworIAlpbnQgcmV0 OworKwljb25zdCBzdHJ1Y3QgcmFuZG9tX2V4dHJuZyAqcm5nOworIAorIAlpZiAoZmxhZ3MgJiB+ KEdSTkRfTk9OQkxPQ0sgfCBHUk5EX1JBTkRPTSB8IEdSTkRfSU5TRUNVUkUpKQorIAkJcmV0dXJu IC1FSU5WQUw7CitAQCAtMTM5Miw2ICsxNDE3LDIxIEBAIFNZU0NBTExfREVGSU5FMyhnZXRyYW5k b20sIGNoYXIgX191c2VyICosIHVidWYsIHNpemVfdCwgbGVuLCB1bnNpZ25lZCBpbnQsIGZsYWdz CisgCWlmICgoZmxhZ3MgJiAoR1JORF9JTlNFQ1VSRSB8IEdSTkRfUkFORE9NKSkgPT0gKEdSTkRf SU5TRUNVUkUgfCBHUk5EX1JBTkRPTSkpCisgCQlyZXR1cm4gLUVJTlZBTDsKKyAKKysJcmN1X3Jl YWRfbG9jaygpOworKwlybmcgPSByY3VfZGVyZWZlcmVuY2UoZXh0cm5nKTsKKysJaWYgKHJuZyAm JiAhdHJ5X21vZHVsZV9nZXQocm5nLT5vd25lcikpCisrCQlybmcgPSBOVUxMOworKwlyY3VfcmVh ZF91bmxvY2soKTsKKysKKysJaWYgKHJuZykgeworKwkJcmV0ID0gaW1wb3J0X3VidWYoSVRFUl9E RVNULCB1YnVmLCBsZW4sICZpdGVyKTsKKysJCWlmICh1bmxpa2VseShyZXQpKQorKwkJCXJldHVy biByZXQ7CisrCQlyZXQgPSBybmctPmV4dHJuZ19yZWFkX2l0ZXIoJml0ZXIsICEhKGZsYWdzICYg R1JORF9SQU5ET00pKTsKKysJCW1vZHVsZV9wdXQocm5nLT5vd25lcik7CisrCQlyZXR1cm4gcmV0 OworKwl9CisrCisgCWlmICghY3JuZ19yZWFkeSgpICYmICEoZmxhZ3MgJiBHUk5EX0lOU0VDVVJF KSkgeworIAkJaWYgKGZsYWdzICYgR1JORF9OT05CTE9DSykKKyAJCQlyZXR1cm4gLUVBR0FJTjsK K0BAIC0xNDEyLDYgKzE0NTIsMTIgQEAgc3RhdGljIF9fcG9sbF90IHJhbmRvbV9wb2xsKHN0cnVj dCBmaWxlICpmaWxlLCBwb2xsX3RhYmxlICp3YWl0KQorIAlyZXR1cm4gY3JuZ19yZWFkeSgpID8g RVBPTExJTiB8IEVQT0xMUkROT1JNIDogRVBPTExPVVQgfCBFUE9MTFdSTk9STTsKKyB9CisgCisr c3RhdGljIF9fcG9sbF90IGV4dHJuZ19wb2xsKHN0cnVjdCBmaWxlICpmaWxlLCBwb2xsX3RhYmxl ICogd2FpdCkKKyt7CisrCS8qIGV4dHJuZyBwb29sIGlzIGFsd2F5cyBmdWxsLCBhbHdheXMgcmVh ZCwgbm8gd3JpdGVzICovCisrCXJldHVybiBFUE9MTElOIHwgRVBPTExSRE5PUk07CisrfQorKwor IHN0YXRpYyBzc2l6ZV90IHdyaXRlX3Bvb2xfdXNlcihzdHJ1Y3QgaW92X2l0ZXIgKml0ZXIpCisg eworIAl1OCBibG9ja1tCTEFLRTJTX0JMT0NLX1NJWkVdOworQEAgLTE1NTIsNyArMTU5OCw1OCBA QCBzdGF0aWMgaW50IHJhbmRvbV9mYXN5bmMoaW50IGZkLCBzdHJ1Y3QgZmlsZSAqZmlscCwgaW50 IG9uKQorIAlyZXR1cm4gZmFzeW5jX2hlbHBlcihmZCwgZmlscCwgb24sICZmYXN5bmMpOworIH0K KyAKKytzdGF0aWMgaW50IHJhbmRvbV9vcGVuKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHN0cnVjdCBm aWxlICpmaWxwKQorK3sKKysJY29uc3Qgc3RydWN0IHJhbmRvbV9leHRybmcgKnJuZzsKKysKKysJ cmN1X3JlYWRfbG9jaygpOworKwlybmcgPSByY3VfZGVyZWZlcmVuY2UoZXh0cm5nKTsKKysJaWYg KHJuZyAmJiAhdHJ5X21vZHVsZV9nZXQocm5nLT5vd25lcikpCisrCQlybmcgPSBOVUxMOworKwly Y3VfcmVhZF91bmxvY2soKTsKKysKKysJaWYgKCFybmcpCisrCQlyZXR1cm4gMDsKKysKKysJZmls cC0+Zl9vcCA9ICZleHRybmdfcmFuZG9tX2ZvcHM7CisrCWZpbHAtPnByaXZhdGVfZGF0YSA9IHJu Zy0+b3duZXI7CisrCisrCXJldHVybiAwOworK30KKysKKytzdGF0aWMgaW50IHVyYW5kb21fb3Bl bihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAqZmlscCkKKyt7CisrCWNvbnN0IHN0 cnVjdCByYW5kb21fZXh0cm5nICpybmc7CisrCisrCXJjdV9yZWFkX2xvY2soKTsKKysJcm5nID0g cmN1X2RlcmVmZXJlbmNlKGV4dHJuZyk7CisrCWlmIChybmcgJiYgIXRyeV9tb2R1bGVfZ2V0KHJu Zy0+b3duZXIpKQorKwkJcm5nID0gTlVMTDsKKysJcmN1X3JlYWRfdW5sb2NrKCk7CisrCisrCWlm ICghcm5nKQorKwkJcmV0dXJuIDA7CisrCisrCWZpbHAtPmZfb3AgPSAmZXh0cm5nX3VyYW5kb21f Zm9wczsKKysJZmlscC0+cHJpdmF0ZV9kYXRhID0gcm5nLT5vd25lcjsKKysKKysJcmV0dXJuIDA7 CisrfQorKworK3N0YXRpYyBpbnQgZXh0cm5nX3JlbGVhc2Uoc3RydWN0IGlub2RlICppbm9kZSwg c3RydWN0IGZpbGUgKmZpbHApCisreworKwltb2R1bGVfcHV0KGZpbHAtPnByaXZhdGVfZGF0YSk7 CisrCXJldHVybiAwOworK30KKysKKytzdGF0aWMgc3NpemVfdAorK2V4dHJuZ19yZWFkX2l0ZXIo c3RydWN0IGtpb2NiICpraW9jYiwgc3RydWN0IGlvdl9pdGVyICppdGVyKQorK3sKKysJcmV0dXJu IHJjdV9kZXJlZmVyZW5jZV9yYXcoZXh0cm5nKS0+ZXh0cm5nX3JlYWRfaXRlcihpdGVyLCBmYWxz ZSk7CisrfQorKworIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgcmFuZG9tX2ZvcHMgPSB7 CisrCS5vcGVuICA9IHJhbmRvbV9vcGVuLAorIAkucmVhZF9pdGVyID0gcmFuZG9tX3JlYWRfaXRl ciwKKyAJLndyaXRlX2l0ZXIgPSByYW5kb21fd3JpdGVfaXRlciwKKyAJLnBvbGwgPSByYW5kb21f cG9sbCwKK0BAIC0xNTY1LDYgKzE2NjIsNyBAQCBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25z IHJhbmRvbV9mb3BzID0geworIH07CisgCisgY29uc3Qgc3RydWN0IGZpbGVfb3BlcmF0aW9ucyB1 cmFuZG9tX2ZvcHMgPSB7CisrCS5vcGVuICA9IHVyYW5kb21fb3BlbiwKKyAJLnJlYWRfaXRlciA9 IHVyYW5kb21fcmVhZF9pdGVyLAorIAkud3JpdGVfaXRlciA9IHJhbmRvbV93cml0ZV9pdGVyLAor IAkudW5sb2NrZWRfaW9jdGwgPSByYW5kb21faW9jdGwsCitAQCAtMTU3NSw2ICsxNjczLDMyIEBA IGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgdXJhbmRvbV9mb3BzID0geworIAkuc3BsaWNl X3dyaXRlID0gaXRlcl9maWxlX3NwbGljZV93cml0ZSwKKyB9OworIAorK3N0YXRpYyBjb25zdCBz dHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGV4dHJuZ19yYW5kb21fZm9wcyA9IHsKKysJLm9wZW4gID0g cmFuZG9tX29wZW4sCisrCS5yZWFkX2l0ZXIgID0gZXh0cm5nX3JlYWRfaXRlciwKKysJLndyaXRl X2l0ZXIgPSByYW5kb21fd3JpdGVfaXRlciwKKysJLnBvbGwgID0gZXh0cm5nX3BvbGwsCisrCS51 bmxvY2tlZF9pb2N0bCA9IHJhbmRvbV9pb2N0bCwKKysJLmNvbXBhdF9pb2N0bCA9IGNvbXBhdF9w dHJfaW9jdGwsCisrCS5mYXN5bmMgPSByYW5kb21fZmFzeW5jLAorKwkubGxzZWVrID0gbm9vcF9s bHNlZWssCisrCS5yZWxlYXNlID0gZXh0cm5nX3JlbGVhc2UsCisrCS5zcGxpY2VfcmVhZCA9IGNv cHlfc3BsaWNlX3JlYWQsCisrCS5zcGxpY2Vfd3JpdGUgPSBpdGVyX2ZpbGVfc3BsaWNlX3dyaXRl LAorK307CisrCisrc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgZXh0cm5nX3Vy YW5kb21fZm9wcyA9IHsKKysJLm9wZW4gID0gdXJhbmRvbV9vcGVuLAorKwkucmVhZF9pdGVyICA9 IGV4dHJuZ19yZWFkX2l0ZXIsCisrCS53cml0ZV9pdGVyID0gcmFuZG9tX3dyaXRlX2l0ZXIsCisr CS51bmxvY2tlZF9pb2N0bCA9IHJhbmRvbV9pb2N0bCwKKysJLmNvbXBhdF9pb2N0bCA9IGNvbXBh dF9wdHJfaW9jdGwsCisrCS5mYXN5bmMgPSByYW5kb21fZmFzeW5jLAorKwkubGxzZWVrID0gbm9v cF9sbHNlZWssCisrCS5yZWxlYXNlID0gZXh0cm5nX3JlbGVhc2UsCisrCS5zcGxpY2VfcmVhZCA9 IGNvcHlfc3BsaWNlX3JlYWQsCisrCS5zcGxpY2Vfd3JpdGUgPSBpdGVyX2ZpbGVfc3BsaWNlX3dy aXRlLAorK307CisgCisgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqCisgICoKK2RpZmYgLS1naXQgYS9kcml2ZXJzL2Zp cm13YXJlL2VmaS9NYWtlZmlsZSBiL2RyaXZlcnMvZmlybXdhcmUvZWZpL01ha2VmaWxlCitpbmRl eCA4ZWZiY2Y2OTllNGYuLjk2ZDVhMWNhOTgxZCAxMDA2NDQKKy0tLSBhL2RyaXZlcnMvZmlybXdh cmUvZWZpL01ha2VmaWxlCisrKysgYi9kcml2ZXJzL2Zpcm13YXJlL2VmaS9NYWtlZmlsZQorQEAg LTI1LDYgKzI1LDcgQEAgc3ViZGlyLSQoQ09ORklHX0VGSV9TVFVCKQkJKz0gbGlic3R1YgorIG9i ai0kKENPTkZJR19FRklfQk9PVExPQURFUl9DT05UUk9MKQkrPSBlZmliYy5vCisgb2JqLSQoQ09O RklHX0VGSV9URVNUKQkJCSs9IHRlc3QvCisgb2JqLSQoQ09ORklHX0VGSV9ERVZfUEFUSF9QQVJT RVIpCSs9IGRldi1wYXRoLXBhcnNlci5vCisrb2JqLSQoQ09ORklHX0VGSSkJCQkrPSBzZWN1cmVi b290Lm8KKyBvYmotJChDT05GSUdfQVBQTEVfUFJPUEVSVElFUykJCSs9IGFwcGxlLXByb3BlcnRp ZXMubworIG9iai0kKENPTkZJR19FRklfUkNJMl9UQUJMRSkJCSs9IHJjaTItdGFibGUubworIG9i ai0kKENPTkZJR19FRklfRU1CRURERURfRklSTVdBUkUpCSs9IGVtYmVkZGVkLWZpcm13YXJlLm8K K2RpZmYgLS1naXQgYS9kcml2ZXJzL2Zpcm13YXJlL2VmaS9lZmkuYyBiL2RyaXZlcnMvZmlybXdh cmUvZWZpL2VmaS5jCitpbmRleCAwMzI3YTM5ZDMxZmEuLjViNTMzMmI0ZGU3OCAxMDA2NDQKKy0t LSBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL2VmaS5jCisrKysgYi9kcml2ZXJzL2Zpcm13YXJlL2Vm aS9lZmkuYworQEAgLTMzLDYgKzMzLDcgQEAKKyAjaW5jbHVkZSA8bGludXgvbWVtYmxvY2suaD4K KyAjaW5jbHVkZSA8bGludXgvc2VjdXJpdHkuaD4KKyAjaW5jbHVkZSA8bGludXgvbm90aWZpZXIu aD4KKysjaW5jbHVkZSA8bGludXgvYnNlYXJjaC5oPgorIAorICNpbmNsdWRlIDxhc20vZWFybHlf aW9yZW1hcC5oPgorIAorQEAgLTEwMTcsNDAgKzEwMTgsMTAxIEBAIGludCBlZmlfbWVtX3R5cGUo dW5zaWduZWQgbG9uZyBwaHlzX2FkZHIpCisgCXJldHVybiBtZC50eXBlOworIH0KKyAKKytzdHJ1 Y3QgZWZpX2Vycm9yX2NvZGUgeworKwllZmlfc3RhdHVzX3Qgc3RhdHVzOworKwlpbnQgZXJybm87 CisrCWNvbnN0IGNoYXIgKmRlc2NyaXB0aW9uOworK307CisrCisrc3RhdGljIGNvbnN0IHN0cnVj dCBlZmlfZXJyb3JfY29kZSBlZmlfZXJyb3JfY29kZXNbXSA9IHsKKysJeyBFRklfU1VDQ0VTUywg MCwgIlN1Y2Nlc3MifSwKKysjaWYgMAorKwl7IEVGSV9MT0FEX0VSUk9SLCAtRVBJQ0tfQU5fRVJS Tk8sICJMb2FkIEVycm9yIn0sCisrI2VuZGlmCisrCXsgRUZJX0lOVkFMSURfUEFSQU1FVEVSLCAt RUlOVkFMLCAiSW52YWxpZCBQYXJhbWV0ZXIifSwKKysJeyBFRklfVU5TVVBQT1JURUQsIC1FTk9T WVMsICJVbnN1cHBvcnRlZCJ9LAorKwl7IEVGSV9CQURfQlVGRkVSX1NJWkUsIC1FTk9TUEMsICJC YWQgQnVmZmVyIFNpemUifSwKKysJeyBFRklfQlVGRkVSX1RPT19TTUFMTCwgLUVOT1NQQywgIkJ1 ZmZlciBUb28gU21hbGwifSwKKysJeyBFRklfTk9UX1JFQURZLCAtRUFHQUlOLCAiTm90IFJlYWR5 In0sCisrCXsgRUZJX0RFVklDRV9FUlJPUiwgLUVJTywgIkRldmljZSBFcnJvciJ9LAorKwl7IEVG SV9XUklURV9QUk9URUNURUQsIC1FUk9GUywgIldyaXRlIFByb3RlY3RlZCJ9LAorKwl7IEVGSV9P VVRfT0ZfUkVTT1VSQ0VTLCAtRU5PTUVNLCAiT3V0IG9mIFJlc291cmNlcyJ9LAorKyNpZiAwCisr CXsgRUZJX1ZPTFVNRV9DT1JSVVBURUQsIC1FUElDS19BTl9FUlJOTywgIlZvbHVtZSBDb3JydXB0 In0sCisrCXsgRUZJX1ZPTFVNRV9GVUxMLCAtRVBJQ0tfQU5fRVJSTk8sICJWb2x1bWUgRnVsbCJ9 LAorKwl7IEVGSV9OT19NRURJQSwgLUVQSUNLX0FOX0VSUk5PLCAiTm8gTWVkaWEifSwKKysJeyBF RklfTUVESUFfQ0hBTkdFRCwgLUVQSUNLX0FOX0VSUk5PLCAiTWVkaWEgY2hhbmdlZCJ9LAorKyNl bmRpZgorKwl7IEVGSV9OT1RfRk9VTkQsIC1FTk9FTlQsICJOb3QgRm91bmQifSwKKysjaWYgMAor Kwl7IEVGSV9BQ0NFU1NfREVOSUVELCAtRVBJQ0tfQU5fRVJSTk8sICJBY2Nlc3MgRGVuaWVkIn0s CisrCXsgRUZJX05PX1JFU1BPTlNFLCAtRVBJQ0tfQU5fRVJSTk8sICJObyBSZXNwb25zZSJ9LAor Kwl7IEVGSV9OT19NQVBQSU5HLCAtRVBJQ0tfQU5fRVJSTk8sICJObyBtYXBwaW5nIn0sCisrCXsg RUZJX1RJTUVPVVQsIC1FUElDS19BTl9FUlJOTywgIlRpbWUgb3V0In0sCisrCXsgRUZJX05PVF9T VEFSVEVELCAtRVBJQ0tfQU5fRVJSTk8sICJOb3Qgc3RhcnRlZCJ9LAorKwl7IEVGSV9BTFJFQURZ X1NUQVJURUQsIC1FUElDS19BTl9FUlJOTywgIkFscmVhZHkgc3RhcnRlZCJ9LAorKyNlbmRpZgor Kwl7IEVGSV9BQk9SVEVELCAtRUlOVFIsICJBYm9ydGVkIn0sCisrI2lmIDAKKysJeyBFRklfSUNN UF9FUlJPUiwgLUVQSUNLX0FOX0VSUk5PLCAiSUNNUCBFcnJvciJ9LAorKwl7IEVGSV9URlRQX0VS Uk9SLCAtRVBJQ0tfQU5fRVJSTk8sICJURlRQIEVycm9yIn0sCisrCXsgRUZJX1BST1RPQ09MX0VS Uk9SLCAtRVBJQ0tfQU5fRVJSTk8sICJQcm90b2NvbCBFcnJvciJ9LAorKwl7IEVGSV9JTkNPTVBB VElCTEVfVkVSU0lPTiwgLUVQSUNLX0FOX0VSUk5PLCAiSW5jb21wYXRpYmxlIFZlcnNpb24ifSwK KysjZW5kaWYKKysJeyBFRklfU0VDVVJJVFlfVklPTEFUSU9OLCAtRUFDQ0VTLCAiU2VjdXJpdHkg UG9saWN5IFZpb2xhdGlvbiJ9LAorKyNpZiAwCisrCXsgRUZJX0NSQ19FUlJPUiwgLUVQSUNLX0FO X0VSUk5PLCAiQ1JDIEVycm9yIn0sCisrCXsgRUZJX0VORF9PRl9NRURJQSwgLUVQSUNLX0FOX0VS Uk5PLCAiRW5kIG9mIE1lZGlhIn0sCisrCXsgRUZJX0VORF9PRl9GSUxFLCAtRVBJQ0tfQU5fRVJS Tk8sICJFbmQgb2YgRmlsZSJ9LAorKwl7IEVGSV9JTlZBTElEX0xBTkdVQUdFLCAtRVBJQ0tfQU5f RVJSTk8sICJJbnZhbGlkIExhbmd1YWdlcyJ9LAorKwl7IEVGSV9DT01QUk9NSVNFRF9EQVRBLCAt RVBJQ0tfQU5fRVJSTk8sICJDb21wcm9taXNlZCBEYXRhIn0sCisrCisrCS8vIHdhcm5pbmdzCisr CXsgRUZJX1dBUk5fVU5LT1dOX0dMWVBILCAtRVBJQ0tfQU5fRVJSTk8sICJXYXJuaW5nIFVua25v d24gR2x5cGgifSwKKysJeyBFRklfV0FSTl9ERUxFVEVfRkFJTFVSRSwgLUVQSUNLX0FOX0VSUk5P LCAiV2FybmluZyBEZWxldGUgRmFpbHVyZSJ9LAorKwl7IEVGSV9XQVJOX1dSSVRFX0ZBSUxVUkUs IC1FUElDS19BTl9FUlJOTywgIldhcm5pbmcgV3JpdGUgRmFpbHVyZSJ9LAorKwl7IEVGSV9XQVJO X0JVRkZFUl9UT09fU01BTEwsIC1FUElDS19BTl9FUlJOTywgIldhcm5pbmcgQnVmZmVyIFRvbyBT bWFsbCJ9LAorKyNlbmRpZgorK307CisrCisrc3RhdGljIGludAorK2VmaV9zdGF0dXNfY21wX2Jz ZWFyY2goY29uc3Qgdm9pZCAqa2V5LCBjb25zdCB2b2lkICppdGVtKQorK3sKKysJdTY0IHN0YXR1 cyA9ICh1NjQpKHVpbnRwdHJfdClrZXk7CisrCXN0cnVjdCBlZmlfZXJyb3JfY29kZSAqY29kZSA9 IChzdHJ1Y3QgZWZpX2Vycm9yX2NvZGUgKilpdGVtOworKworKwlpZiAoc3RhdHVzIDwgY29kZS0+ c3RhdHVzKQorKwkJcmV0dXJuIC0xOworKwlpZiAoc3RhdHVzID4gY29kZS0+c3RhdHVzKQorKwkJ cmV0dXJuIDE7CisrCXJldHVybiAwOworK30KKysKKyBpbnQgZWZpX3N0YXR1c190b19lcnIoZWZp X3N0YXR1c190IHN0YXR1cykKKyB7CistCWludCBlcnI7CistCistCXN3aXRjaCAoc3RhdHVzKSB7 CistCWNhc2UgRUZJX1NVQ0NFU1M6CistCQllcnIgPSAwOworLQkJYnJlYWs7CistCWNhc2UgRUZJ X0lOVkFMSURfUEFSQU1FVEVSOgorLQkJZXJyID0gLUVJTlZBTDsKKy0JCWJyZWFrOworLQljYXNl IEVGSV9PVVRfT0ZfUkVTT1VSQ0VTOgorLQkJZXJyID0gLUVOT1NQQzsKKy0JCWJyZWFrOworLQlj YXNlIEVGSV9ERVZJQ0VfRVJST1I6CistCQllcnIgPSAtRUlPOworLQkJYnJlYWs7CistCWNhc2Ug RUZJX1dSSVRFX1BST1RFQ1RFRDoKKy0JCWVyciA9IC1FUk9GUzsKKy0JCWJyZWFrOworLQljYXNl IEVGSV9TRUNVUklUWV9WSU9MQVRJT046CistCQllcnIgPSAtRUFDQ0VTOworLQkJYnJlYWs7Cist CWNhc2UgRUZJX05PVF9GT1VORDoKKy0JCWVyciA9IC1FTk9FTlQ7CistCQlicmVhazsKKy0JY2Fz ZSBFRklfQUJPUlRFRDoKKy0JCWVyciA9IC1FSU5UUjsKKy0JCWJyZWFrOworLQlkZWZhdWx0Ogor LQkJZXJyID0gLUVJTlZBTDsKKy0JfQorKwlzdHJ1Y3QgZWZpX2Vycm9yX2NvZGUgKmZvdW5kOwor KwlzaXplX3QgbnVtID0gc2l6ZW9mKGVmaV9lcnJvcl9jb2RlcykgLyBzaXplb2Yoc3RydWN0IGVm aV9lcnJvcl9jb2RlKTsKKyAKKy0JcmV0dXJuIGVycjsKKysJZm91bmQgPSBic2VhcmNoKCh2b2lk ICopKHVpbnRwdHJfdClzdGF0dXMsIGVmaV9lcnJvcl9jb2RlcywKKysJCQludW0sIHNpemVvZihz dHJ1Y3QgZWZpX2Vycm9yX2NvZGUpLAorKwkJCWVmaV9zdGF0dXNfY21wX2JzZWFyY2gpOworKwlp ZiAoIWZvdW5kKQorKwkJcmV0dXJuIC1FSU5WQUw7CisrCXJldHVybiBmb3VuZC0+ZXJybm87Cisr fQorKworK2NvbnN0IGNoYXIgKgorK2VmaV9zdGF0dXNfdG9fc3RyKGVmaV9zdGF0dXNfdCBzdGF0 dXMpCisreworKwlzdHJ1Y3QgZWZpX2Vycm9yX2NvZGUgKmZvdW5kOworKwlzaXplX3QgbnVtID0g c2l6ZW9mKGVmaV9lcnJvcl9jb2RlcykgLyBzaXplb2Yoc3RydWN0IGVmaV9lcnJvcl9jb2RlKTsK KysKKysJZm91bmQgPSBic2VhcmNoKCh2b2lkICopKHVpbnRwdHJfdClzdGF0dXMsIGVmaV9lcnJv cl9jb2RlcywKKysJCQludW0sIHNpemVvZihzdHJ1Y3QgZWZpX2Vycm9yX2NvZGUpLAorKwkJCWVm aV9zdGF0dXNfY21wX2JzZWFyY2gpOworKwlpZiAoIWZvdW5kKQorKwkJcmV0dXJuICJVbmtub3du IGVycm9yIGNvZGUiOworKwlyZXR1cm4gZm91bmQtPmRlc2NyaXB0aW9uOworIH0KKyBFWFBPUlRf U1lNQk9MX0dQTChlZmlfc3RhdHVzX3RvX2Vycik7CisgCitkaWZmIC0tZ2l0IGEvZHJpdmVycy9m aXJtd2FyZS9lZmkvbGlic3R1Yi9mZHQuYyBiL2RyaXZlcnMvZmlybXdhcmUvZWZpL2xpYnN0dWIv ZmR0LmMKK2luZGV4IDIzYjM1NDNkMzA0MS4uMGQwOGE1NDlhMTBiIDEwMDY0NAorLS0tIGEvZHJp dmVycy9maXJtd2FyZS9lZmkvbGlic3R1Yi9mZHQuYworKysrIGIvZHJpdmVycy9maXJtd2FyZS9l ZmkvbGlic3R1Yi9mZHQuYworQEAgLTEzMiw2ICsxMzIsMTEgQEAgc3RhdGljIGVmaV9zdGF0dXNf dCB1cGRhdGVfZmR0KHZvaWQgKm9yaWdfZmR0LCB1bnNpZ25lZCBsb25nIG9yaWdfZmR0X3NpemUs CisgCQl9CisgCX0KKyAKKysJZmR0X3ZhbDMyID0gY3B1X3RvX2ZkdDMyKCh1MzIpZWZpX2dldF9z ZWN1cmVib290KCkpOworKwlzdGF0dXMgPSBmZHRfc2V0cHJvcF92YXIoZmR0LCBub2RlLCAic2Vj dXJlLWJvb3QtbW9kZSIsIGZkdF92YWwzMik7CisrCWlmIChzdGF0dXMpCisrCQlnb3RvIGZkdF9z ZXRfZmFpbDsKKysKKyAJLyogU2hyaW5rIHRoZSBGRFQgYmFjayB0byBpdHMgbWluaW11bSBzaXpl OiAqLworIAlmZHRfcGFjayhmZHQpOworIAorZGlmZiAtLWdpdCBhL2RyaXZlcnMvZmlybXdhcmUv ZWZpL2xpYnN0dWIvc2VjdXJlYm9vdC5jIGIvZHJpdmVycy9maXJtd2FyZS9lZmkvbGlic3R1Yi9z ZWN1cmVib290LmMKK2luZGV4IDUxNmY0ZjAwNjliZC4uMzgwMzU0NzU1MTA4IDEwMDY0NAorLS0t IGEvZHJpdmVycy9maXJtd2FyZS9lZmkvbGlic3R1Yi9zZWN1cmVib290LmMKKysrKyBiL2RyaXZl cnMvZmlybXdhcmUvZWZpL2xpYnN0dWIvc2VjdXJlYm9vdC5jCitAQCAtMjksMTAgKzI5LDEzIEBA IGVudW0gZWZpX3NlY3VyZWJvb3RfbW9kZSBlZmlfZ2V0X3NlY3VyZWJvb3Qodm9pZCkKKyB7Cisg CXUzMiBhdHRyOworIAl1bnNpZ25lZCBsb25nIHNpemU7CistCWVudW0gZWZpX3NlY3VyZWJvb3Rf bW9kZSBtb2RlOworKwlzdGF0aWMgZW51bSBlZmlfc2VjdXJlYm9vdF9tb2RlIG1vZGU7CisgCWVm aV9zdGF0dXNfdCBzdGF0dXM7CisgCXU4IG1va3Nic3RhdGU7CisgCisrCWlmIChtb2RlICE9IGVm aV9zZWN1cmVib290X21vZGVfdW5zZXQpCisrCQlyZXR1cm4gbW9kZTsKKysKKyAJbW9kZSA9IGVm aV9nZXRfc2VjdXJlYm9vdF9tb2RlKGdldF92YXIpOworIAlpZiAobW9kZSA9PSBlZmlfc2VjdXJl Ym9vdF9tb2RlX3Vua25vd24pIHsKKyAJCWVmaV9lcnIoIkNvdWxkIG5vdCBkZXRlcm1pbmUgVUVG SSBTZWN1cmUgQm9vdCBzdGF0dXMuXG4iKTsKK0BAIC01MywxMCArNTYsMTMgQEAgZW51bSBlZmlf c2VjdXJlYm9vdF9tb2RlIGVmaV9nZXRfc2VjdXJlYm9vdCh2b2lkKQorIAkvKiBJZiBpdCBmYWls cywgd2UgZG9uJ3QgY2FyZSB3aHkuIERlZmF1bHQgdG8gc2VjdXJlICovCisgCWlmIChzdGF0dXMg IT0gRUZJX1NVQ0NFU1MpCisgCQlnb3RvIHNlY3VyZV9ib290X2VuYWJsZWQ7CistCWlmICghKGF0 dHIgJiBFRklfVkFSSUFCTEVfTk9OX1ZPTEFUSUxFKSAmJiBtb2tzYnN0YXRlID09IDEpCistCQly ZXR1cm4gZWZpX3NlY3VyZWJvb3RfbW9kZV9kaXNhYmxlZDsKKysJaWYgKCEoYXR0ciAmIEVGSV9W QVJJQUJMRV9OT05fVk9MQVRJTEUpICYmIG1va3Nic3RhdGUgPT0gMSkgeworKwkJbW9kZSA9IGVm aV9zZWN1cmVib290X21vZGVfZGlzYWJsZWQ7CisrCQlyZXR1cm4gbW9kZTsKKysJfQorIAorIHNl Y3VyZV9ib290X2VuYWJsZWQ6CisgCWVmaV9pbmZvKCJVRUZJIFNlY3VyZSBCb290IGlzIGVuYWJs ZWQuXG4iKTsKKy0JcmV0dXJuIGVmaV9zZWN1cmVib290X21vZGVfZW5hYmxlZDsKKysJbW9kZSA9 IGVmaV9zZWN1cmVib290X21vZGVfZW5hYmxlZDsKKysJcmV0dXJuIG1vZGU7CisgfQorZGlmZiAt LWdpdCBhL2RyaXZlcnMvZmlybXdhcmUvZWZpL3NlY3VyZWJvb3QuYyBiL2RyaXZlcnMvZmlybXdh cmUvZWZpL3NlY3VyZWJvb3QuYworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw MDAwMC4uZGUwYTM3MTRhNWQ0CistLS0gL2Rldi9udWxsCisrKysgYi9kcml2ZXJzL2Zpcm13YXJl L2VmaS9zZWN1cmVib290LmMKK0BAIC0wLDAgKzEsMzggQEAKKysvKiBDb3JlIGtlcm5lbCBzZWN1 cmUgYm9vdCBzdXBwb3J0LgorKyAqCisrICogQ29weXJpZ2h0IChDKSAyMDE3IFJlZCBIYXQsIElu Yy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KKysgKiBXcml0dGVuIGJ5IERhdmlkIEhvd2VsbHMgKGRo b3dlbGxzQHJlZGhhdC5jb20pCisrICoKKysgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2Fy ZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisrICogbW9kaWZ5IGl0IHVuZGVyIHRo ZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2VuY2UKKysgKiBhcyBwdWJsaXNo ZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24KKysgKiAy IG9mIHRoZSBMaWNlbmNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor KyAqLworKworKyNkZWZpbmUgcHJfZm10KGZtdCkgS0JVSUxEX01PRE5BTUUgIjogIiBmbXQKKysK KysjaW5jbHVkZSA8bGludXgvZWZpLmg+CisrI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgorKyNp bmNsdWRlIDxsaW51eC9wcmludGsuaD4KKysKKysvKgorKyAqIERlY2lkZSB3aGF0IHRvIGRvIHdo ZW4gVUVGSSBzZWN1cmUgYm9vdCBtb2RlIGlzIGVuYWJsZWQuCisrICovCisrdm9pZCBfX2luaXQg ZWZpX3NldF9zZWN1cmVfYm9vdChlbnVtIGVmaV9zZWN1cmVib290X21vZGUgbW9kZSkKKyt7Cisr CWlmIChlZmlfZW5hYmxlZChFRklfQk9PVCkpIHsKKysJCXN3aXRjaCAobW9kZSkgeworKwkJY2Fz ZSBlZmlfc2VjdXJlYm9vdF9tb2RlX2Rpc2FibGVkOgorKwkJCXByX2luZm8oIlNlY3VyZSBib290 IGRpc2FibGVkXG4iKTsKKysJCQlicmVhazsKKysJCWNhc2UgZWZpX3NlY3VyZWJvb3RfbW9kZV9l bmFibGVkOgorKwkJCXNldF9iaXQoRUZJX1NFQ1VSRV9CT09ULCAmZWZpLmZsYWdzKTsKKysJCQlw cl9pbmZvKCJTZWN1cmUgYm9vdCBlbmFibGVkXG4iKTsKKysJCQlicmVhazsKKysJCWRlZmF1bHQ6 CisrCQkJcHJfd2FybigiU2VjdXJlIGJvb3QgY291bGQgbm90IGJlIGRldGVybWluZWQgKG1vZGUg JXUpXG4iLAorKwkJCQkgICBtb2RlKTsKKysJCQlicmVhazsKKysJCX0KKysJfQorK30KK2RpZmYg LS1naXQgYS9kcml2ZXJzL2h3dHJhY2luZy9jb3Jlc2lnaHQvY29yZXNpZ2h0LWV0bTR4LWNvcmUu YyBiL2RyaXZlcnMvaHd0cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtZXRtNHgtY29yZS5jCitp bmRleCAxNGJiMzFiZDZhMGIuLjA1MjkzNTlkNzQ0MCAxMDA2NDQKKy0tLSBhL2RyaXZlcnMvaHd0 cmFjaW5nL2NvcmVzaWdodC9jb3Jlc2lnaHQtZXRtNHgtY29yZS5jCisrKysgYi9kcml2ZXJzL2h3 dHJhY2luZy9jb3Jlc2lnaHQvY29yZXNpZ2h0LWV0bTR4LWNvcmUuYworQEAgLTEyLDYgKzEyLDcg QEAKKyAjaW5jbHVkZSA8bGludXgvaW5pdC5oPgorICNpbmNsdWRlIDxsaW51eC90eXBlcy5oPgor ICNpbmNsdWRlIDxsaW51eC9kZXZpY2UuaD4KKysjaW5jbHVkZSA8bGludXgvZG1pLmg+CisgI2lu Y2x1ZGUgPGxpbnV4L2lvLmg+CisgI2luY2x1ZGUgPGxpbnV4L2Vyci5oPgorICNpbmNsdWRlIDxs aW51eC9mcy5oPgorQEAgLTI0NDcsNiArMjQ0OCwxNiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFt YmFfaWQgZXRtNF9pZHNbXSA9IHsKKyAJe30sCisgfTsKKyAKKytzdGF0aWMgY29uc3Qgc3RydWN0 IGRtaV9zeXN0ZW1faWQgYnJva2VuX2NvcmVzaWdodFtdID0geworKwl7CisrCQkubWF0Y2hlcyA9 IHsKKysJCQlETUlfTUFUQ0goRE1JX1NZU19WRU5ET1IsICJIUEUiKSwKKysJCQlETUlfTUFUQ0go RE1JX1BST0RVQ1RfTkFNRSwgIkFwb2xsbyA3MCIpLAorKwkJfSwKKysJfSwKKysJeyB9CS8qIHRl cm1pbmF0aW5nIGVudHJ5ICovCisrfTsKKysKKyBNT0RVTEVfREVWSUNFX1RBQkxFKGFtYmEsIGV0 bTRfaWRzKTsKKyAKKyBzdGF0aWMgc3RydWN0IGFtYmFfZHJpdmVyIGV0bTR4X2FtYmFfZHJpdmVy ID0geworQEAgLTI1MjEsNiArMjUzMiwxMSBAQCBzdGF0aWMgaW50IF9faW5pdCBldG00eF9pbml0 KHZvaWQpCisgeworIAlpbnQgcmV0OworIAorKwlpZiAoZG1pX2NoZWNrX3N5c3RlbShicm9rZW5f Y29yZXNpZ2h0KSkgeworKwkJcHJfaW5mbygiRVRNNCBkaXNhYmxlZCBkdWUgdG8gZmlybXdhcmUg YnVnXG4iKTsKKysJCXJldHVybiAwOworKwl9CisrCisgCXJldCA9IGV0bTRfcG1fc2V0dXAoKTsK KyAKKyAJLyogZXRtNF9wbV9zZXR1cCgpIGRvZXMgaXRzIG93biBjbGVhbnVwIC0gZXhpdCBvbiBl cnJvciAqLworQEAgLTI1NDcsNiArMjU2Myw5IEBAIHN0YXRpYyBpbnQgX19pbml0IGV0bTR4X2lu aXQodm9pZCkKKyAKKyBzdGF0aWMgdm9pZCBfX2V4aXQgZXRtNHhfZXhpdCh2b2lkKQorIHsKKysJ aWYgKGRtaV9jaGVja19zeXN0ZW0oYnJva2VuX2NvcmVzaWdodCkpCisrCQlyZXR1cm47CisrCisg CWFtYmFfZHJpdmVyX3VucmVnaXN0ZXIoJmV0bTR4X2FtYmFfZHJpdmVyKTsKKyAJcGxhdGZvcm1f ZHJpdmVyX3VucmVnaXN0ZXIoJmV0bTRfcGxhdGZvcm1fZHJpdmVyKTsKKyAJZXRtNF9wbV9jbGVh cigpOworZGlmZiAtLWdpdCBhL2RyaXZlcnMvaW9tbXUvaW9tbXUuYyBiL2RyaXZlcnMvaW9tbXUv aW9tbXUuYworaW5kZXggZThmMTNkY2ViYmRlLi5kZDcwMTRjYTk2MmMgMTAwNjQ0CistLS0gYS9k cml2ZXJzL2lvbW11L2lvbW11LmMKKysrKyBiL2RyaXZlcnMvaW9tbXUvaW9tbXUuYworQEAgLTgs NiArOCw3IEBACisgCisgI2luY2x1ZGUgPGxpbnV4L2FtYmEvYnVzLmg+CisgI2luY2x1ZGUgPGxp bnV4L2RldmljZS5oPgorKyNpbmNsdWRlIDxsaW51eC9kbWkuaD4KKyAjaW5jbHVkZSA8bGludXgv a2VybmVsLmg+CisgI2luY2x1ZGUgPGxpbnV4L2JpdHMuaD4KKyAjaW5jbHVkZSA8bGludXgvYnVn Lmg+CitAQCAtMzEzNSw2ICszMTM2LDI3IEBAIGludCBpb21tdV9md3NwZWNfYWRkX2lkcyhzdHJ1 Y3QgZGV2aWNlICpkZXYsIGNvbnN0IHUzMiAqaWRzLCBpbnQgbnVtX2lkcykKKyB9CisgRVhQT1JU X1NZTUJPTF9HUEwoaW9tbXVfZndzcGVjX2FkZF9pZHMpOworIAorKyNpZmRlZiBDT05GSUdfQVJN NjQKKytzdGF0aWMgaW50IF9faW5pdCBpb21tdV9xdWlya3Modm9pZCkKKyt7CisrCWNvbnN0IGNo YXIgKnZlbmRvciwgKm5hbWU7CisrCisrCXZlbmRvciA9IGRtaV9nZXRfc3lzdGVtX2luZm8oRE1J X1NZU19WRU5ET1IpOworKwluYW1lID0gZG1pX2dldF9zeXN0ZW1faW5mbyhETUlfUFJPRFVDVF9O QU1FKTsKKysKKysJaWYgKHZlbmRvciAmJgorKwkgICAgKHN0cm5jbXAodmVuZG9yLCAiR0lHQUJZ VEUiLCA4KSA9PSAwICYmIG5hbWUgJiYKKysJICAgICAoc3RybmNtcChuYW1lLCAiUjEyMCIsIDQp ID09IDAgfHwKKysJICAgICAgc3RybmNtcChuYW1lLCAiUjI3MCIsIDQpID09IDApKSkgeworKwkJ cHJfd2FybigiR2lnYWJ5dGUgJXMgZGV0ZWN0ZWQsIGZvcmNlIGlvbW11IHBhc3N0aHJvdWdoIG1v ZGUiLCBuYW1lKTsKKysJCWlvbW11X2RlZl9kb21haW5fdHlwZSA9IElPTU1VX0RPTUFJTl9JREVO VElUWTsKKysJfQorKworKwlyZXR1cm4gMDsKKyt9CisrYXJjaF9pbml0Y2FsbChpb21tdV9xdWly a3MpOworKyNlbmRpZgorKworIC8qKgorICAqIGlvbW11X3NldHVwX2RlZmF1bHRfZG9tYWluIC0g U2V0IHRoZSBkZWZhdWx0X2RvbWFpbiBmb3IgdGhlIGdyb3VwCisgICogQGdyb3VwOiBHcm91cCB0 byBjaGFuZ2UKK2RpZmYgLS1naXQgYS9kcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNhcy5jIGIv ZHJpdmVycy9tZXNzYWdlL2Z1c2lvbi9tcHRzYXMuYworaW5kZXggYzM2MmYwOWE4YzU1Li5iY2Rh NjJkODllY2QgMTAwNjQ0CistLS0gYS9kcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNhcy5jCisr KysgYi9kcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNhcy5jCitAQCAtNTM3Nyw2ICs1Mzc3LDEw IEBAIHN0YXRpYyB2b2lkIG1wdHNhc19yZW1vdmUoc3RydWN0IHBjaV9kZXYgKnBkZXYpCisgfQor IAorIHN0YXRpYyBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCBtcHRzYXNfcGNpX3RhYmxlW10g PSB7CisrI2lmZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCisrCXsgUENJX1ZFTkRPUl9JRF9M U0lfTE9HSUMsIE1QSV9NQU5VRkFDVFBBR0VfREVWSURfU0FTMTA2OCwKKysJCVBDSV9WRU5ET1Jf SURfVk1XQVJFLCBQQ0lfQU5ZX0lEIH0sCisrI2Vsc2UKKyAJeyBQQ0lfVkVORE9SX0lEX0xTSV9M T0dJQywgTVBJX01BTlVGQUNUUEFHRV9ERVZJRF9TQVMxMDY0LAorIAkJUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAorIAl7IFBDSV9WRU5ET1JfSURfTFNJX0xPR0lDLCBNUElfTUFOVUZBQ1RQQUdF X0RFVklEX1NBUzEwNjgsCitAQCAtNTM4OSw2ICs1MzkzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBwY2lfZGV2aWNlX2lkIG1wdHNhc19wY2lfdGFibGVbXSA9IHsKKyAJCVBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKKyAJeyBQQ0lfVkVORE9SX0lEX0xTSV9MT0dJQywgTVBJX01BTlVGQUNUUEFH RV9ERVZJRF9TQVMxMDY4XzgyMFhFTFAsCisgCQlQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisr I2VuZGlmCisgCXswfQkvKiBUZXJtaW5hdGluZyBlbnRyeSAqLworIH07CisgTU9EVUxFX0RFVklD RV9UQUJMRShwY2ksIG1wdHNhc19wY2lfdGFibGUpOworZGlmZiAtLWdpdCBhL2RyaXZlcnMvbWVz c2FnZS9mdXNpb24vbXB0c3BpLmMgYi9kcml2ZXJzL21lc3NhZ2UvZnVzaW9uL21wdHNwaS5jCitp bmRleCA1Njg5MmIxZjNkZTIuLmIwZTU1OTEzYmIyZSAxMDA2NDQKKy0tLSBhL2RyaXZlcnMvbWVz c2FnZS9mdXNpb24vbXB0c3BpLmMKKysrKyBiL2RyaXZlcnMvbWVzc2FnZS9mdXNpb24vbXB0c3Bp LmMKK0BAIC0xMjQwLDEyICsxMjQwLDE3IEBAIHN0YXRpYyBzdHJ1Y3Qgc3BpX2Z1bmN0aW9uX3Rl bXBsYXRlIG1wdHNwaV90cmFuc3BvcnRfZnVuY3Rpb25zID0geworICAqLworIAorIHN0YXRpYyBj b25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCBtcHRzcGlfcGNpX3RhYmxlW10gPSB7CisrI2lmZGVm IENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCisrCXsgUENJX1ZFTkRPUl9JRF9MU0lfTE9HSUMsIE1Q SV9NQU5VRkFDVFBBR0VfREVWSURfNTNDMTAzMCwKKysJUENJX1ZFTkRPUl9JRF9WTVdBUkUsIFBD SV9BTllfSUQgfSwKKysjZWxzZQorIAl7IFBDSV9WRU5ET1JfSURfTFNJX0xPR0lDLCBNUElfTUFO VUZBQ1RQQUdFX0RFVklEXzUzQzEwMzAsCisgCQlQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisg CXsgUENJX1ZFTkRPUl9JRF9BVFRPLCBNUElfTUFOVUZBQ1RQQUdFX0RFVklEXzUzQzEwMzAsCisg CQlQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisgCXsgUENJX1ZFTkRPUl9JRF9MU0lfTE9HSUMs IE1QSV9NQU5VRkFDVFBBR0VfREVWSURfNTNDMTAzNSwKKyAJCVBDSV9BTllfSUQsIFBDSV9BTllf SUQgfSwKKysjZW5kaWYKKyAJezB9CS8qIFRlcm1pbmF0aW5nIGVudHJ5ICovCisgfTsKKyBNT0RV TEVfREVWSUNFX1RBQkxFKHBjaSwgbXB0c3BpX3BjaV90YWJsZSk7CitkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvd2lyZWd1YXJkL21haW4uYyBiL2RyaXZlcnMvbmV0L3dpcmVndWFyZC9tYWluLmMK K2luZGV4IGEwMDY3MWI1ODcwMS4uZWVlZjI3NjZiOGIzIDEwMDY0NAorLS0tIGEvZHJpdmVycy9u ZXQvd2lyZWd1YXJkL21haW4uYworKysrIGIvZHJpdmVycy9uZXQvd2lyZWd1YXJkL21haW4uYwor QEAgLTEyLDYgKzEyLDcgQEAKKyAKKyAjaW5jbHVkZSA8dWFwaS9saW51eC93aXJlZ3VhcmQuaD4K KyAKKysjaW5jbHVkZSA8bGludXgvZmlwcy5oPgorICNpbmNsdWRlIDxsaW51eC9pbml0Lmg+Cisg I2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgorICNpbmNsdWRlIDxuZXQvZ2VuZXRsaW5rLmg+CitA QCAtMjEsNiArMjIsMTEgQEAgc3RhdGljIGludCBfX2luaXQgd2dfbW9kX2luaXQodm9pZCkKKyB7 CisgCWludCByZXQ7CisgCisrI2lmZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTCisrCWlmIChm aXBzX2VuYWJsZWQpCisrCQlyZXR1cm4gLUVPUE5PVFNVUFA7CisrI2VuZGlmCisrCisgCXJldCA9 IHdnX2FsbG93ZWRpcHNfc2xhYl9pbml0KCk7CisgCWlmIChyZXQgPCAwKQorIAkJZ290byBlcnJf YWxsb3dlZGlwczsKK2RpZmYgLS1naXQgYS9kcml2ZXJzL3BjaS9wY2ktZHJpdmVyLmMgYi9kcml2 ZXJzL3BjaS9wY2ktZHJpdmVyLmMKK2luZGV4IGYzNjc3OGU2MmFjMS4uN2I0ZGM0YWZmN2M1IDEw MDY0NAorLS0tIGEvZHJpdmVycy9wY2kvcGNpLWRyaXZlci5jCisrKysgYi9kcml2ZXJzL3BjaS9w Y2ktZHJpdmVyLmMKK0BAIC0xOSw2ICsxOSw3IEBACisgI2luY2x1ZGUgPGxpbnV4L2tleGVjLmg+ CisgI2luY2x1ZGUgPGxpbnV4L29mX2RldmljZS5oPgorICNpbmNsdWRlIDxsaW51eC9hY3BpLmg+ CisrI2luY2x1ZGUgPGxpbnV4L2tlcm5lbC5oPgorICNpbmNsdWRlIDxsaW51eC9kbWEtbWFwLW9w cy5oPgorICNpbmNsdWRlIDxsaW51eC9pb21tdS5oPgorICNpbmNsdWRlICJwY2kuaCIKK0BAIC0z MjksNyArMzMwLDE1IEBAIHN0YXRpYyBpbnQgbG9jYWxfcGNpX3Byb2JlKHN0cnVjdCBkcnZfZGV2 X2FuZF9pZCAqZGRpKQorIAkgKi8KKyAJcG1fcnVudGltZV9nZXRfc3luYyhkZXYpOworIAlwY2lf ZGV2LT5kcml2ZXIgPSBwY2lfZHJ2OworKworKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNF UworKwlyYyA9IC1FQUNDRVM7CisrCWlmICghcGNpX3JoX2NoZWNrX3N0YXR1cyhwY2lfZGV2KSkK KysJCXJjID0gcGNpX2Rydi0+cHJvYmUocGNpX2RldiwgZGRpLT5pZCk7CisrI2Vsc2UKKyAJcmMg PSBwY2lfZHJ2LT5wcm9iZShwY2lfZGV2LCBkZGktPmlkKTsKKysjZW5kaWYKKysKKyAJaWYgKCFy YykKKyAJCXJldHVybiByYzsKKyAJaWYgKHJjIDwgMCkgeworZGlmZiAtLWdpdCBhL2RyaXZlcnMv cGNpL3F1aXJrcy5jIGIvZHJpdmVycy9wY2kvcXVpcmtzLmMKK2luZGV4IGIwOWYyN2Y3ODQ2Zi4u YjU0ZmU1Mzg1MTFhIDEwMDY0NAorLS0tIGEvZHJpdmVycy9wY2kvcXVpcmtzLmMKKysrKyBiL2Ry aXZlcnMvcGNpL3F1aXJrcy5jCitAQCAtNDQ5Niw2ICs0NDk2LDMwIEBAIHN0YXRpYyB2b2lkIHF1 aXJrX2FzcGVlZF9wY2lfYnJpZGdlX25vX2FsaWFzKHN0cnVjdCBwY2lfZGV2ICpwZGV2KQorIH0K KyBERUNMQVJFX1BDSV9GSVhVUF9IRUFERVIoUENJX1ZFTkRPUl9JRF9BU1BFRUQsIDB4MTE1MCwg cXVpcmtfYXNwZWVkX3BjaV9icmlkZ2Vfbm9fYWxpYXMpOworIAorKy8qCisrICogUENJIEJBUiA1 IGlzIG5vdCBzZXR1cCBjb3JyZWN0bHkgZm9yIHRoZSBvbi1ib2FyZCBBSENJIGNvbnRyb2xsZXIK KysgKiBvbiBCcm9hZGNvbSdzIFZ1bGNhbiBwcm9jZXNzb3IuIEFkZGVkIGEgcXVpcmsgdG8gZml4 IEJBUiA1IGJ5CisrICogdXNpbmcgQkFSIDQncyByZXNvdXJjZXMgd2hpY2ggYXJlIHBvcHVsYXRl ZCBjb3JyZWN0bHkgYW5kIE5PVAorKyAqIGFjdHVhbGx5IHVzZWQgYnkgdGhlIEFIQ0kgY29udHJv bGxlci4KKysgKi8KKytzdGF0aWMgdm9pZCBxdWlya19maXhfdnVsY2FuX2FoY2lfYmFycyhzdHJ1 Y3QgcGNpX2RldiAqZGV2KQorK3sKKysJc3RydWN0IHJlc291cmNlICpyID0gICZkZXYtPnJlc291 cmNlWzRdOworKworKwlpZiAoIShyLT5mbGFncyAmIElPUkVTT1VSQ0VfTUVNKSB8fCAoci0+c3Rh cnQgPT0gMCkpCisrCQlyZXR1cm47CisrCisrCS8qIFNldCBCQVI1IHJlc291cmNlIHRvIEJBUjQg Ki8KKysJZGV2LT5yZXNvdXJjZVs1XSA9ICpyOworKworKwkvKiBVcGRhdGUgQkFSNSBpbiBwY2kg Y29uZmlnIHNwYWNlICovCisrCXBjaV93cml0ZV9jb25maWdfZHdvcmQoZGV2LCBQQ0lfQkFTRV9B RERSRVNTXzUsIHItPnN0YXJ0KTsKKysKKysJLyogQ2xlYXIgQkFSNCdzIHJlc291cmNlICovCisr CW1lbXNldChyLCAwLCBzaXplb2YoKnIpKTsKKyt9CisrREVDTEFSRV9QQ0lfRklYVVBfSEVBREVS KFBDSV9WRU5ET1JfSURfQlJPQURDT00sIDB4OTAyNywgcXVpcmtfZml4X3Z1bGNhbl9haGNpX2Jh cnMpOworKworIC8qCisgICogSW50ZXJzaWwvVGVjaHdlbGwgVFc2ODZbNDU4OV0tYmFzZWQgdmlk ZW8gY2FwdHVyZSBjYXJkcyBoYXZlIGFuIGVtcHR5ICh6ZXJvKQorICAqIGNsYXNzIGNvZGUuICBG aXggaXQuCitkaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL2hwc2EuYyBiL2RyaXZlcnMvc2NzaS9o cHNhLmMKK2luZGV4IDhlZGFkMTgzMGFiZS4uZTU1OGFjZWRmYTQ0IDEwMDY0NAorLS0tIGEvZHJp dmVycy9zY3NpL2hwc2EuYworKysrIGIvZHJpdmVycy9zY3NpL2hwc2EuYworQEAgLTgyLDcgKzgy LDkgQEAgTU9EVUxFX0RFU0NSSVBUSU9OKCJEcml2ZXIgZm9yIEhQIFNtYXJ0IEFycmF5IENvbnRy b2xsZXIgdmVyc2lvbiAiIFwKKyAJSFBTQV9EUklWRVJfVkVSU0lPTik7CisgTU9EVUxFX1ZFUlNJ T04oSFBTQV9EUklWRVJfVkVSU0lPTik7CisgTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOworKyNpZm5k ZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKKyBNT0RVTEVfQUxJQVMoImNjaXNzIik7CisrI2Vu ZGlmCisgCisgc3RhdGljIGludCBocHNhX3NpbXBsZV9tb2RlOworIG1vZHVsZV9wYXJhbShocHNh X3NpbXBsZV9tb2RlLCBpbnQsIFNfSVJVR098U19JV1VTUik7CitAQCAtMTQ0LDEwICsxNDYsMTIg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZGV2aWNlX2lkIGhwc2FfcGNpX2RldmljZV9pZFtd ID0geworIAl7UENJX1ZFTkRPUl9JRF9IUF8zUEFSLCAweDAwNzUsIDB4MTU5MCwgMHgwMDdEfSwK KyAJe1BDSV9WRU5ET1JfSURfSFBfM1BBUiwgMHgwMDc1LCAweDE1OTAsIDB4MDA4OH0sCisgCXtQ Q0lfVkVORE9SX0lEX0hQLCAweDMzM2YsIDB4MTAzYywgMHgzMzNmfSwKKysjaWZuZGVmIENPTkZJ R19SSEVMX0RJRkZFUkVOQ0VTCisgCXtQQ0lfVkVORE9SX0lEX0hQLCAgICAgUENJX0FOWV9JRCwJ UENJX0FOWV9JRCwgUENJX0FOWV9JRCwKKyAJCVBDSV9DTEFTU19TVE9SQUdFX1JBSUQgPDwgOCwg MHhmZmZmIDw8IDgsIDB9LAorIAl7UENJX1ZFTkRPUl9JRF9DT01QQVEsICAgICBQQ0lfQU5ZX0lE LAlQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lELAorIAkJUENJX0NMQVNTX1NUT1JBR0VfUkFJRCA8PCA4 LCAweGZmZmYgPDwgOCwgMH0sCisrI2VuZGlmCisgCXswLH0KKyB9OworIAorZGlmZiAtLWdpdCBh L2RyaXZlcnMvc2NzaS9xbGEyeHh4L3FsYV9vcy5jIGIvZHJpdmVycy9zY3NpL3FsYTJ4eHgvcWxh X29zLmMKK2luZGV4IDcyYjFjMjhlNGRhZS4uMjIyNmM5ZGZmYTk0IDEwMDY0NAorLS0tIGEvZHJp dmVycy9zY3NpL3FsYTJ4eHgvcWxhX29zLmMKKysrKyBiL2RyaXZlcnMvc2NzaS9xbGEyeHh4L3Fs YV9vcy5jCitAQCAtODEyOCw2ICs4MTI4LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBwY2lfZXJy b3JfaGFuZGxlcnMgcWxhMnh4eF9lcnJfaGFuZGxlciA9IHsKKyB9OworIAorIHN0YXRpYyBjb25z dCBzdHJ1Y3QgcGNpX2RldmljZV9pZCBxbGEyeHh4X3BjaV90YmxbXSA9IHsKKysjaWZuZGVmIENP TkZJR19SSEVMX0RJRkZFUkVOQ0VTCisgCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJ QywgUENJX0RFVklDRV9JRF9RTE9HSUNfSVNQMjEwMCkgfSwKKyAJeyBQQ0lfREVWSUNFKFBDSV9W RU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1AyMjAwKSB9LAorIAl7IFBD SV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDIz MDApIH0sCitAQCAtODE0MCwxMyArODE0MSwxOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHBjaV9k ZXZpY2VfaWQgcWxhMnh4eF9wY2lfdGJsW10gPSB7CisgCXsgUENJX0RFVklDRShQQ0lfVkVORE9S X0lEX1FMT0dJQywgUENJX0RFVklDRV9JRF9RTE9HSUNfSVNQODQzMikgfSwKKyAJeyBQQ0lfREVW SUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1A1NDIyKSB9 LAorIAl7IFBDSV9ERVZJQ0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxP R0lDX0lTUDU0MzIpIH0sCisrI2VuZGlmCisgCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FM T0dJQywgUENJX0RFVklDRV9JRF9RTE9HSUNfSVNQMjUzMikgfSwKKyAJeyBQQ0lfREVWSUNFKFBD SV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1AyMDMxKSB9LAorKyNp Zm5kZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKKyAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1Jf SURfUUxPR0lDLCBQQ0lfREVWSUNFX0lEX1FMT0dJQ19JU1A4MDAxKSB9LAorIAl7IFBDSV9ERVZJ Q0UoUENJX1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDgwMjEpIH0s CisrI2VuZGlmCisgCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklD RV9JRF9RTE9HSUNfSVNQODAzMSkgfSwKKysjaWZuZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VT CisgCXsgUENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklDRV9JRF9RTE9H SUNfSVNQRjAwMSkgfSwKKyAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lf REVWSUNFX0lEX1FMT0dJQ19JU1A4MDQ0KSB9LAorKyNlbmRpZgorIAl7IFBDSV9ERVZJQ0UoUENJ X1ZFTkRPUl9JRF9RTE9HSUMsIFBDSV9ERVZJQ0VfSURfUUxPR0lDX0lTUDIwNzEpIH0sCisgCXsg UENJX0RFVklDRShQQ0lfVkVORE9SX0lEX1FMT0dJQywgUENJX0RFVklDRV9JRF9RTE9HSUNfSVNQ MjI3MSkgfSwKKyAJeyBQQ0lfREVWSUNFKFBDSV9WRU5ET1JfSURfUUxPR0lDLCBQQ0lfREVWSUNF X0lEX1FMT0dJQ19JU1AyMjYxKSB9LAorZGlmZiAtLWdpdCBhL2RyaXZlcnMvc2NzaS9zZC5jIGIv ZHJpdmVycy9zY3NpL3NkLmMKK2luZGV4IDU5OWU3NWYzMzMzNC4uZWM1MmMzYTRmYTE0IDEwMDY0 NAorLS0tIGEvZHJpdmVycy9zY3NpL3NkLmMKKysrKyBiL2RyaXZlcnMvc2NzaS9zZC5jCitAQCAt MTQ1LDYgKzE0NSwxMyBAQCBzdGF0aWMgdm9pZCBzZF9sYXJnZV9wb29sX2Rlc3Ryb3kodm9pZCkK KyAJfQorIAltdXRleF91bmxvY2soJnNkX211dGV4X2xvY2spOworIH0KKysjaWZkZWYgQ09ORklH X1JIRUxfRElGRkVSRU5DRVMKKytzdGF0aWMgY2hhciBzZF9wcm9iZV90eXBlWzZdID0gImFzeW5j IjsKKyttb2R1bGVfcGFyYW1fc3RyaW5nKHByb2JlLCBzZF9wcm9iZV90eXBlLCBzaXplb2Yoc2Rf cHJvYmVfdHlwZSksCisrCQkgICAgU19JUlVHT3xTX0lXVVNSKTsKKytNT0RVTEVfUEFSTV9ERVND KHByb2JlLCAiYXN5bmMgb3Igc3luYy4gU2V0dGluZyB0byAnc3luYycgZGlzYWJsZXMgYXN5bmNo cm9ub3VzICIKKysJCSAiZGV2aWNlIG51bWJlciBhc3NpZ25tZW50cyAoc2RhLCBzZGIsIC4uLiku Iik7CisrI2VuZGlmCisgCisgc3RhdGljIHZvaWQgc2RfZGlzYWJsZV9kaXNjYXJkKHN0cnVjdCBz Y3NpX2Rpc2sgKnNka3ApCisgeworQEAgLTQ0NjAsNiArNDQ2NywxMSBAQCBzdGF0aWMgaW50IF9f aW5pdCBpbml0X3NkKHZvaWQpCisgCQlnb3RvIGVycl9vdXRfY2xhc3M7CisgCX0KKyAKKysjaWZk ZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKKysJaWYgKCFzdHJjbXAoc2RfcHJvYmVfdHlwZSwg InN5bmMiKSkKKysJCXNkX3RlbXBsYXRlLmdlbmRydi5wcm9iZV90eXBlID0gUFJPQkVfRk9SQ0Vf U1lOQ0hST05PVVM7CisrI2VuZGlmCisrCisgCWVyciA9IHNjc2lfcmVnaXN0ZXJfZHJpdmVyKCZz ZF90ZW1wbGF0ZSk7CisgCWlmIChlcnIpCisgCQlnb3RvIGVycl9vdXRfZHJpdmVyOworZGlmZiAt LWdpdCBhL2RyaXZlcnMvdXNiL2NvcmUvaHViLmMgYi9kcml2ZXJzL3VzYi9jb3JlL2h1Yi5jCitp bmRleCBkOTJiZjg4NzczOWQuLjAzOWZkNTYyMDI4MiAxMDA2NDQKKy0tLSBhL2RyaXZlcnMvdXNi L2NvcmUvaHViLmMKKysrKyBiL2RyaXZlcnMvdXNiL2NvcmUvaHViLmMKK0BAIC01OTAyLDYgKzU5 MDIsMTMgQEAgc3RhdGljIHZvaWQgaHViX2V2ZW50KHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykK KyAJCQkodTE2KSBodWItPmNoYW5nZV9iaXRzWzBdLAorIAkJCSh1MTYpIGh1Yi0+ZXZlbnRfYml0 c1swXSk7CisgCisrCS8qIERvbid0IGRpc2Nvbm5lY3QgVVNCLVNBVEEgb24gVHJpbVNsaWNlICov CisrCWlmIChzdHJjbXAoZGV2X25hbWUoaGRldi0+YnVzLT5jb250cm9sbGVyKSwgInRlZ3JhLWVo Y2kuMCIpID09IDApIHsKKysJCWlmICgoaGRldi0+c3RhdGUgPT0gNykgJiYgKGh1Yi0+Y2hhbmdl X2JpdHNbMF0gPT0gMCkgJiYKKysJCQkJKGh1Yi0+ZXZlbnRfYml0c1swXSA9PSAweDIpKQorKwkJ CWh1Yi0+ZXZlbnRfYml0c1swXSA9IDA7CisrCX0KKysKKyAJLyogTG9jayB0aGUgZGV2aWNlLCB0 aGVuIGNoZWNrIHRvIHNlZSBpZiB3ZSB3ZXJlCisgCSAqIGRpc2Nvbm5lY3RlZCB3aGlsZSB3YWl0 aW5nIGZvciB0aGUgbG9jayB0byBzdWNjZWVkLiAqLworIAl1c2JfbG9ja19kZXZpY2UoaGRldik7 CitkaWZmIC0tZ2l0IGEvZnMvYWZzL21haW4uYyBiL2ZzL2Fmcy9tYWluLmMKK2luZGV4IDdhODgz YzU5OTc2Zi4uOTA3ZWM2MGU1MDBhIDEwMDY0NAorLS0tIGEvZnMvYWZzL21haW4uYworKysrIGIv ZnMvYWZzL21haW4uYworQEAgLTE5NCw2ICsxOTQsOSBAQCBzdGF0aWMgaW50IF9faW5pdCBhZnNf aW5pdCh2b2lkKQorIAkJZ290byBlcnJvcl9wcm9jOworIAl9CisgCisrI2lmZGVmIENPTkZJR19S SEVMX0RJRkZFUkVOQ0VTCisrCW1hcmtfcGFydG5lcl9zdXBwb3J0ZWQoS0JVSUxEX01PRE5BTUUs IFRISVNfTU9EVUxFKTsKKysjZW5kaWYKKyAJcmV0dXJuIHJldDsKKyAKKyBlcnJvcl9wcm9jOgor ZGlmZiAtLWdpdCBhL2ZzL2Vyb2ZzL3N1cGVyLmMgYi9mcy9lcm9mcy9zdXBlci5jCitpbmRleCA3 NzA4MDg2ODU5MzQuLmE5OTkyMWFhZWJkZSAxMDA2NDQKKy0tLSBhL2ZzL2Vyb2ZzL3N1cGVyLmMK KysrKyBiL2ZzL2Vyb2ZzL3N1cGVyLmMKK0BAIC01OTksNiArNTk5LDkgQEAgc3RhdGljIGludCBl cm9mc19mY19maWxsX3N1cGVyKHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIHN0cnVjdCBmc19jb250 ZXh0ICpmYykKKyB7CisgCXN0cnVjdCBpbm9kZSAqaW5vZGU7CisgCXN0cnVjdCBlcm9mc19zYl9p bmZvICpzYmkgPSBFUk9GU19TQihzYik7CisrI2lmZGVmIENPTkZJR19SSEVMX0RJRkZFUkVOQ0VT CisrCXN0YXRpYyBib29sIHByaW50ZWQgPSBmYWxzZTsKKysjZW5kaWYKKyAJaW50IGVycjsKKyAK KyAJc2ItPnNfbWFnaWMgPSBFUk9GU19TVVBFUl9NQUdJQzsKK0BAIC03MzgsNiArNzQxLDEyIEBA IHN0YXRpYyBpbnQgZXJvZnNfZmNfZmlsbF9zdXBlcihzdHJ1Y3Qgc3VwZXJfYmxvY2sgKnNiLCBz dHJ1Y3QgZnNfY29udGV4dCAqZmMpCisgCisgCXNiaS0+ZGlyX3JhX2J5dGVzID0gRVJPRlNfRElS X1JBX0JZVEVTOworIAllcm9mc19pbmZvKHNiLCAibW91bnRlZCB3aXRoIHJvb3QgaW5vZGUgQCBu aWQgJWxsdS4iLCBzYmktPnJvb3RfbmlkKTsKKysjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5D RVMKKysJaWYgKCFwcmludGVkKSB7CisrCQltYXJrX3RlY2hfcHJldmlldygiRVJPRlMgZmlsZXN5 c3RlbSIsIE5VTEwpOworKwkJcHJpbnRlZCA9IHRydWU7CisrICAgICAgIH0KKysjZW5kaWYKKyAJ cmV0dXJuIDA7CisgfQorIAorZGlmZiAtLWdpdCBhL2ZzL2V4dDQvc3VwZXIuYyBiL2ZzL2V4dDQv c3VwZXIuYworaW5kZXggNGI2MTEyZTVkNmM1Li4yNjM2MTVkMTcxMjAgMTAwNjQ0CistLS0gYS9m cy9leHQ0L3N1cGVyLmMKKysrKyBiL2ZzL2V4dDQvc3VwZXIuYworQEAgLTU3NDcsNiArNTc0Nywx NyBAQCBzdGF0aWMgaW50IF9fZXh0NF9maWxsX3N1cGVyKHN0cnVjdCBmc19jb250ZXh0ICpmYywg c3RydWN0IHN1cGVyX2Jsb2NrICpzYikKKyAJYXRvbWljX3NldCgmc2JpLT5zX3dhcm5pbmdfY291 bnQsIDApOworIAlhdG9taWNfc2V0KCZzYmktPnNfbXNnX2NvdW50LCAwKTsKKyAKKysjaWZkZWYg Q09ORklHX1JIRUxfRElGRkVSRU5DRVMKKysJaWYgKGV4dDRfaGFzX2ZlYXR1cmVfdmVyaXR5KHNi KSkgeworKwkJc3RhdGljIGJvb2wgcHJpbnRlZCA9IGZhbHNlOworKworKwkJaWYgKCFwcmludGVk KSB7CisrCQkJbWFya190ZWNoX3ByZXZpZXcoImZzLXZlcml0eSBvbiBleHQ0IiwgTlVMTCk7Cisr CQkJcHJpbnRlZCA9IHRydWU7CisrCQl9CisrCX0KKysjZW5kaWYKKysKKyAJLyogUmVnaXN0ZXIg c3lzZnMgYWZ0ZXIgYWxsIGluaXRpYWxpemF0aW9ucyBhcmUgY29tcGxldGUuICovCisgCWVyciA9 IGV4dDRfcmVnaXN0ZXJfc3lzZnMoc2IpOworIAlpZiAoZXJyKQorZGlmZiAtLWdpdCBhL2luY2x1 ZGUvbGludXgvY3J5cHRvLmggYi9pbmNsdWRlL2xpbnV4L2NyeXB0by5oCitpbmRleCBiN2M5N2Yx YzQ3YzkuLjBhNDg0ZjQ1YjI0YSAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvbGludXgvY3J5cHRvLmgK KysrKyBiL2luY2x1ZGUvbGludXgvY3J5cHRvLmgKK0BAIC0xNTIsNiArMTUyLDggQEAKKyAjZGVm aW5lIENSWVBUT19URk1fUkVRX01BWV9CQUNLTE9HCTB4MDAwMDA0MDAKKyAjZGVmaW5lIENSWVBU T19URk1fUkVRX09OX1NUQUNLCQkweDAwMDAwODAwCisgCisrI2RlZmluZSBDUllQVE9fVEZNX0ZJ UFNfQ09NUExJQU5DRQkweDgwMDAwMDAwCisrCisgLyoKKyAgKiBNaXNjZWxsYW5lb3VzIHN0dWZm LgorICAqLworZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvZWZpLmggYi9pbmNsdWRlL2xpbnV4 L2VmaS5oCitpbmRleCBjY2JjMzU0Nzk2ODQuLjhlYjlhMTI3NmJhNyAxMDA2NDQKKy0tLSBhL2lu Y2x1ZGUvbGludXgvZWZpLmgKKysrKyBiL2luY2x1ZGUvbGludXgvZWZpLmgKK0BAIC00NSw2ICs0 NSw4IEBAIHN0cnVjdCBzY3JlZW5faW5mbzsKKyAjZGVmaW5lIEVGSV9BQk9SVEVECQkoMjEgfCAo MVVMIDw8IChCSVRTX1BFUl9MT05HLTEpKSkKKyAjZGVmaW5lIEVGSV9TRUNVUklUWV9WSU9MQVRJ T04JKDI2IHwgKDFVTCA8PCAoQklUU19QRVJfTE9ORy0xKSkpCisgCisrI2RlZmluZSBFRklfSVNf RVJST1IoeCkJCSgoeCkgJiAoMVVMIDw8IChCSVRTX1BFUl9MT05HLTEpKSkKKysKKyB0eXBlZGVm IHVuc2lnbmVkIGxvbmcgZWZpX3N0YXR1c190OworIHR5cGVkZWYgdTggZWZpX2Jvb2xfdDsKKyB0 eXBlZGVmIHUxNiBlZmlfY2hhcjE2X3Q7CQkvKiBVTklDT0RFIGNoYXJhY3RlciAqLworQEAgLTg0 Nyw2ICs4NDksMTQgQEAgZXh0ZXJuIGludCBfX2luaXQgcGFyc2VfZWZpX3NpZ25hdHVyZV9saXN0 KAorICNkZWZpbmUgRUZJX01FTV9BVFRSCQk5CS8qIERpZCBmaXJtd2FyZSBwdWJsaXNoIGFuIEVG SV9NRU1PUllfQVRUUklCVVRFUyB0YWJsZT8gKi8KKyAjZGVmaW5lIEVGSV9NRU1fTk9fU09GVF9S RVNFUlZFCTEwCS8qIElzIHRoZSBrZXJuZWwgY29uZmlndXJlZCB0byBpZ25vcmUgc29mdCByZXNl cnZhdGlvbnM/ICovCisgI2RlZmluZSBFRklfUFJFU0VSVkVfQlNfUkVHSU9OUwkxMQkvKiBBcmUg RUZJIGJvb3Qtc2VydmljZXMgbWVtb3J5IHNlZ21lbnRzIGF2YWlsYWJsZT8gKi8KKysjZGVmaW5l IEVGSV9TRUNVUkVfQk9PVAkJMTIJLyogQXJlIHdlIGluIFNlY3VyZSBCb290IG1vZGU/ICovCisr CisrZW51bSBlZmlfc2VjdXJlYm9vdF9tb2RlIHsKKysJZWZpX3NlY3VyZWJvb3RfbW9kZV91bnNl dCwKKysJZWZpX3NlY3VyZWJvb3RfbW9kZV91bmtub3duLAorKwllZmlfc2VjdXJlYm9vdF9tb2Rl X2Rpc2FibGVkLAorKwllZmlfc2VjdXJlYm9vdF9tb2RlX2VuYWJsZWQsCisrfTsKKyAKKyAjaWZk ZWYgQ09ORklHX0VGSQorIC8qCitAQCAtODU4LDYgKzg2OCw4IEBAIHN0YXRpYyBpbmxpbmUgYm9v bCBlZmlfZW5hYmxlZChpbnQgZmVhdHVyZSkKKyB9CisgZXh0ZXJuIHZvaWQgZWZpX3JlYm9vdChl bnVtIHJlYm9vdF9tb2RlIHJlYm9vdF9tb2RlLCBjb25zdCBjaGFyICpfX3VudXNlZCk7CisgCisr ZXh0ZXJuIHZvaWQgX19pbml0IGVmaV9zZXRfc2VjdXJlX2Jvb3QoZW51bSBlZmlfc2VjdXJlYm9v dF9tb2RlIG1vZGUpOworKworIGJvb2wgX19wdXJlIF9fZWZpX3NvZnRfcmVzZXJ2ZV9lbmFibGVk KHZvaWQpOworIAorIHN0YXRpYyBpbmxpbmUgYm9vbCBfX3B1cmUgZWZpX3NvZnRfcmVzZXJ2ZV9l bmFibGVkKHZvaWQpCitAQCAtODc5LDYgKzg5MSw4IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBlZmlf ZW5hYmxlZChpbnQgZmVhdHVyZSkKKyBzdGF0aWMgaW5saW5lIHZvaWQKKyBlZmlfcmVib290KGVu dW0gcmVib290X21vZGUgcmVib290X21vZGUsIGNvbnN0IGNoYXIgKl9fdW51c2VkKSB7fQorIAor K3N0YXRpYyBpbmxpbmUgdm9pZCBlZmlfc2V0X3NlY3VyZV9ib290KGVudW0gZWZpX3NlY3VyZWJv b3RfbW9kZSBtb2RlKSB7fQorKworIHN0YXRpYyBpbmxpbmUgYm9vbCBlZmlfc29mdF9yZXNlcnZl X2VuYWJsZWQodm9pZCkKKyB7CisgCXJldHVybiBmYWxzZTsKK0BAIC04OTMsNiArOTA3LDcgQEAg c3RhdGljIGlubGluZSB2b2lkIGVmaV9maW5kX21pcnJvcih2b2lkKSB7fQorICNlbmRpZgorIAor IGV4dGVybiBpbnQgZWZpX3N0YXR1c190b19lcnIoZWZpX3N0YXR1c190IHN0YXR1cyk7CisrZXh0 ZXJuIGNvbnN0IGNoYXIgKmVmaV9zdGF0dXNfdG9fc3RyKGVmaV9zdGF0dXNfdCBzdGF0dXMpOwor IAorIC8qCisgICogVmFyaWFibGUgQXR0cmlidXRlcworQEAgLTExMTAsMTMgKzExMjUsNiBAQCBl eHRlcm4gdW5zaWduZWQgbG9uZyBlZmlfY2FsbF92aXJ0X3NhdmVfZmxhZ3Modm9pZCk7CisgCisg dm9pZCBlZmlfcnVudGltZV9hc3NlcnRfbG9ja19oZWxkKHZvaWQpOworIAorLWVudW0gZWZpX3Nl Y3VyZWJvb3RfbW9kZSB7CistCWVmaV9zZWN1cmVib290X21vZGVfdW5zZXQsCistCWVmaV9zZWN1 cmVib290X21vZGVfdW5rbm93biwKKy0JZWZpX3NlY3VyZWJvb3RfbW9kZV9kaXNhYmxlZCwKKy0J ZWZpX3NlY3VyZWJvb3RfbW9kZV9lbmFibGVkLAorLX07CistCisgc3RhdGljIGlubGluZQorIGVu dW0gZWZpX3NlY3VyZWJvb3RfbW9kZSBlZmlfZ2V0X3NlY3VyZWJvb3RfbW9kZShlZmlfZ2V0X3Zh cmlhYmxlX3QgKmdldF92YXIpCisgeworZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgva2VybmVs LmggYi9pbmNsdWRlL2xpbnV4L2tlcm5lbC5oCitpbmRleCBlNTU3MGExNmNiYjEuLjgyOTQ1YjQ3 NGUyZSAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvbGludXgva2VybmVsLmgKKysrKyBiL2luY2x1ZGUv bGludXgva2VybmVsLmgKK0BAIC0xOTQsNCArMTk0LDMyIEBAIGV4dGVybiBlbnVtIHN5c3RlbV9z dGF0ZXMgc3lzdGVtX3N0YXRlOworICMgZGVmaW5lIFJFQlVJTERfRFVFX1RPX0RZTkFNSUNfRlRS QUNFCisgI2VuZGlmCisgCisrLyogUGVybWlzc2lvbnMgb24gYSBzeXNmcyBmaWxlOiB5b3UgZGlk bid0IG1pc3MgdGhlIDAgcHJlZml4IGRpZCB5b3U/ICovCisrI2RlZmluZSBWRVJJRllfT0NUQUxf UEVSTUlTU0lPTlMocGVybXMpCQkJCQkJXAorKwkoQlVJTERfQlVHX09OX1pFUk8oKHBlcm1zKSA8 IDApICsJCQkJCVwKKysJIEJVSUxEX0JVR19PTl9aRVJPKChwZXJtcykgPiAwNzc3KSArCQkJCQlc CisrCSAvKiBVU0VSX1JFQURBQkxFID49IEdST1VQX1JFQURBQkxFID49IE9USEVSX1JFQURBQkxF ICovCQlcCisrCSBCVUlMRF9CVUdfT05fWkVSTygoKChwZXJtcykgPj4gNikgJiA0KSA8ICgoKHBl cm1zKSA+PiAzKSAmIDQpKSArCVwKKysJIEJVSUxEX0JVR19PTl9aRVJPKCgoKHBlcm1zKSA+PiAz KSAmIDQpIDwgKChwZXJtcykgJiA0KSkgKwkJXAorKwkgLyogVVNFUl9XUklUQUJMRSA+PSBHUk9V UF9XUklUQUJMRSAqLwkJCQkJXAorKwkgQlVJTERfQlVHX09OX1pFUk8oKCgocGVybXMpID4+IDYp ICYgMikgPCAoKChwZXJtcykgPj4gMykgJiAyKSkgKwlcCisrCSAvKiBPVEhFUl9XUklUQUJMRT8g IEdlbmVyYWxseSBjb25zaWRlcmVkIGEgYmFkIGlkZWEuICovCQlcCisrCSBCVUlMRF9CVUdfT05f WkVSTygocGVybXMpICYgMikgKwkJCQkJXAorKwkgKHBlcm1zKSkKKysKKytzdHJ1Y3QgbW9kdWxl OworKworKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUworK3ZvaWQgbWFya19oYXJkd2Fy ZV91bm1haW50YWluZWQoY29uc3QgY2hhciAqZHJpdmVyX25hbWUsIGNoYXIgKmZtdCwgLi4uKTsK Kyt2b2lkIG1hcmtfaGFyZHdhcmVfZGVwcmVjYXRlZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwg Y2hhciAqZm10LCAuLi4pOworK3ZvaWQgbWFya190ZWNoX3ByZXZpZXcoY29uc3QgY2hhciAqbXNn LCBzdHJ1Y3QgbW9kdWxlICptb2QpOworK3ZvaWQgbWFya19wYXJ0bmVyX3N1cHBvcnRlZChjb25z dCBjaGFyICptc2csIHN0cnVjdCBtb2R1bGUgKm1vZCk7Cisrdm9pZCBpbml0X3JoX2NoZWNrX3N0 YXR1cyhjaGFyICpmbl9uYW1lKTsKKysjZWxzZQorK3N0YXRpYyBpbmxpbmUgdm9pZCBtYXJrX2hh cmR3YXJlX3VubWFpbnRhaW5lZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwgY2hhciAqZm10LCAu Li4pIHsgfQorK3N0YXRpYyBpbmxpbmUgdm9pZCBtYXJrX2hhcmR3YXJlX2RlcHJlY2F0ZWQoY29u c3QgY2hhciAqZHJpdmVyX25hbWUsIGNoYXIgKmZtdCwgLi4uKSB7IH0KKytzdGF0aWMgaW5saW5l IHZvaWQgbWFya190ZWNoX3ByZXZpZXcoY29uc3QgY2hhciAqbXNnLCBzdHJ1Y3QgbW9kdWxlICpt b2QpIHsgfQorK3N0YXRpYyBpbmxpbmUgdm9pZCBtYXJrX3BhcnRuZXJfc3VwcG9ydGVkKGNvbnN0 IGNoYXIgKm1zZywgc3RydWN0IG1vZHVsZSAqbW9kKSB7IH0KKysjZW5kaWYKKysKKyAjZW5kaWYK K2RpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2xzbV9ob29rX2RlZnMuaCBiL2luY2x1ZGUvbGlu dXgvbHNtX2hvb2tfZGVmcy5oCitpbmRleCA2NWM5NjA5ZWMyMDcuLjJjYzI0M2VjNzNmNiAxMDA2 NDQKKy0tLSBhL2luY2x1ZGUvbGludXgvbHNtX2hvb2tfZGVmcy5oCisrKysgYi9pbmNsdWRlL2xp bnV4L2xzbV9ob29rX2RlZnMuaAorQEAgLTQ1Niw2ICs0NTYsNyBAQCBMU01fSE9PSyhpbnQsIDAs IGJwZl90b2tlbl9jYXBhYmxlLCBjb25zdCBzdHJ1Y3QgYnBmX3Rva2VuICp0b2tlbiwgaW50IGNh cCkKKyAKKyBMU01fSE9PSyhpbnQsIDAsIGxvY2tlZF9kb3duLCBlbnVtIGxvY2tkb3duX3JlYXNv biB3aGF0KQorIAorKworICNpZmRlZiBDT05GSUdfUEVSRl9FVkVOVFMKKyBMU01fSE9PSyhpbnQs IDAsIHBlcmZfZXZlbnRfb3BlbiwgaW50IHR5cGUpCisgTFNNX0hPT0soaW50LCAwLCBwZXJmX2V2 ZW50X2FsbG9jLCBzdHJ1Y3QgcGVyZl9ldmVudCAqZXZlbnQpCitkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9saW51eC9tb2R1bGUuaCBiL2luY2x1ZGUvbGludXgvbW9kdWxlLmgKK2luZGV4IDc1NjY4MTVm YWJiZS4uZjE4YWY3ZmRiNDViIDEwMDY0NAorLS0tIGEvaW5jbHVkZS9saW51eC9tb2R1bGUuaAor KysrIGIvaW5jbHVkZS9saW51eC9tb2R1bGUuaAorQEAgLTQxMyw2ICs0MTMsNyBAQCBzdHJ1Y3Qg bW9kdWxlIHsKKyAJc3RydWN0IG1vZHVsZV9hdHRyaWJ1dGUgKm1vZGluZm9fYXR0cnM7CisgCWNv bnN0IGNoYXIgKnZlcnNpb247CisgCWNvbnN0IGNoYXIgKnNyY3ZlcnNpb247CisrCWNvbnN0IGNo YXIgKnJoZWx2ZXJzaW9uOworIAljb25zdCBjaGFyICppbXBvcnRlZF9uYW1lc3BhY2VzOworIAlz dHJ1Y3Qga29iamVjdCAqaG9sZGVyc19kaXI7CisgCitAQCAtMTAyMCw2ICsxMDIxLDEwIEBAIHN0 YXRpYyBpbmxpbmUgdW5zaWduZWQgbG9uZyBmaW5kX2thbGxzeW1zX3N5bWJvbF92YWx1ZShzdHJ1 Y3QgbW9kdWxlICptb2QsCisgCisgI2VuZGlmICAvKiBDT05GSUdfTU9EVUxFUyAmJiBDT05GSUdf S0FMTFNZTVMgKi8KKyAKKysjaWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKKyt2b2lkIG1v ZHVsZV9yaF9jaGVja19zdGF0dXMoY29uc3QgY2hhciAqIG1vZHVsZV9uYW1lKTsKKysjZW5kaWYK KysKKyAvKiBEZWZpbmUgX19mcmVlKG1vZHVsZV9wdXQpIG1hY3JvIGZvciBzdHJ1Y3QgbW9kdWxl ICouICovCisgREVGSU5FX0ZSRUUobW9kdWxlX3B1dCwgc3RydWN0IG1vZHVsZSAqLCBpZiAoX1Qp IG1vZHVsZV9wdXQoX1QpKQorIAorZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvcGFuaWMuaCBi L2luY2x1ZGUvbGludXgvcGFuaWMuaAoraW5kZXggZjFkZDQxN2U1NGIyLi45NTM0NDI4MWVkMmMg MTAwNjQ0CistLS0gYS9pbmNsdWRlL2xpbnV4L3BhbmljLmgKKysrKyBiL2luY2x1ZGUvbGludXgv cGFuaWMuaAorQEAgLTg4LDcgKzg4LDIyIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzZXRfYXJjaF9w YW5pY190aW1lb3V0KGludCB0aW1lb3V0LCBpbnQgYXJjaF9kZWZhdWx0X3RpbWVvdXQpCisgI2Rl ZmluZSBUQUlOVF9SQU5EU1RSVUNUCQkxNworICNkZWZpbmUgVEFJTlRfVEVTVAkJCTE4CisgI2Rl ZmluZSBUQUlOVF9GV0NUTAkJCTE5CistI2RlZmluZSBUQUlOVF9GTEFHU19DT1VOVAkJMjAKKysv KiBTdGFydCBvZiBSZWQgSGF0LXNwZWNpZmljIHRhaW50IGZsYWdzICovCisrI2RlZmluZSBUQUlO VF8yMAkJCTIwCisrI2RlZmluZSBUQUlOVF8yMQkJCTIxCisrI2RlZmluZSBUQUlOVF8yMgkJCTIy CisrI2RlZmluZSBUQUlOVF8yMwkJCTIzCisrI2RlZmluZSBUQUlOVF8yNAkJCTI0CisrI2RlZmlu ZSBUQUlOVF8yNQkJCTI1CisrI2RlZmluZSBUQUlOVF9QQVJUTkVSX1NVUFBPUlRFRCAJMjYKKysj ZGVmaW5lIFRBSU5UX1NVUFBPUlRfUkVNT1ZFRAkJMjcKKysvKiBCaXRzIDI4IC0gMzEgYXJlIHJl c2VydmVkIGZvciBSZWQgSGF0IHVzZSBvbmx5ICovCisrI2RlZmluZSBUQUlOVF9SRVNFUlZFRDI4 CQkyOAorKyNkZWZpbmUgVEFJTlRfUkVTRVJWRUQyOQkJMjkKKysjZGVmaW5lIFRBSU5UX1JFU0VS VkVEMzAJCTMwCisrI2RlZmluZSBUQUlOVF9VTlBSSVZJTEVHRURfQlBGCQkzMQorKy8qIEVuZCBv ZiBSZWQgSGF0LXNwZWNpZmljIHRhaW50IGZsYWdzICovCisrI2RlZmluZSBUQUlOVF9GTEFHU19D T1VOVAkJMzIKKyAjZGVmaW5lIFRBSU5UX0ZMQUdTX01BWAkJCSgoMVVMIDw8IFRBSU5UX0ZMQUdT X0NPVU5UKSAtIDEpCisgCisgc3RydWN0IHRhaW50X2ZsYWcgeworZGlmZiAtLWdpdCBhL2luY2x1 ZGUvbGludXgvcGNpLmggYi9pbmNsdWRlL2xpbnV4L3BjaS5oCitpbmRleCA2NGIzMDhiNmU2MWMu LjA5NjdmOWJlMGI1NCAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvbGludXgvcGNpLmgKKysrKyBiL2lu Y2x1ZGUvbGludXgvcGNpLmgKK0BAIC0xNzE1LDYgKzE3MTUsNyBAQCBpbnQgcGNpX2FkZF9keW5p ZChzdHJ1Y3QgcGNpX2RyaXZlciAqZHJ2LAorIAkJICB1bnNpZ25lZCBsb25nIGRyaXZlcl9kYXRh KTsKKyBjb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAqcGNpX21hdGNoX2lkKGNvbnN0IHN0cnVj dCBwY2lfZGV2aWNlX2lkICppZHMsCisgCQkJCQkgc3RydWN0IHBjaV9kZXYgKmRldik7CisrCisg aW50IHBjaV9zY2FuX2JyaWRnZShzdHJ1Y3QgcGNpX2J1cyAqYnVzLCBzdHJ1Y3QgcGNpX2RldiAq ZGV2LCBpbnQgbWF4LAorIAkJICAgIGludCBwYXNzKTsKKyAKK0BAIC0yODc5LDYgKzI4ODAsMTAg QEAgc3RhdGljIGlubGluZSBib29sIHBjaV9pc190aHVuZGVyYm9sdF9hdHRhY2hlZChzdHJ1Y3Qg cGNpX2RldiAqcGRldikKKyAJcmV0dXJuIGZhbHNlOworIH0KKyAKKysjaWZkZWYgQ09ORklHX1JI RUxfRElGRkVSRU5DRVMKKytib29sIHBjaV9yaF9jaGVja19zdGF0dXMoc3RydWN0IHBjaV9kZXYg KnBjaV9kZXYpOworKyNlbmRpZgorKworICNpZiBkZWZpbmVkKENPTkZJR19QQ0lFUE9SVEJVUykg fHwgZGVmaW5lZChDT05GSUdfRUVIKSB8fCBkZWZpbmVkKENPTkZJR19TMzkwKQorIHZvaWQgcGNp X3VldmVudF9lcnMoc3RydWN0IHBjaV9kZXYgKnBkZXYsIGVudW0gIHBjaV9lcnNfcmVzdWx0IGVy cl90eXBlKTsKKyAjZW5kaWYKK2RpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3JhbmRvbS5oIGIv aW5jbHVkZS9saW51eC9yYW5kb20uaAoraW5kZXggOGE4MDY0ZGMzOTcwLi4zMjM4ZmFiOGY3NDkg MTAwNjQ0CistLS0gYS9pbmNsdWRlL2xpbnV4L3JhbmRvbS5oCisrKysgYi9pbmNsdWRlL2xpbnV4 L3JhbmRvbS5oCitAQCAtOSw2ICs5LDEzIEBACisgCisgI2luY2x1ZGUgPHVhcGkvbGludXgvcmFu ZG9tLmg+CisgCisrc3RydWN0IGlvdl9pdGVyOworKworK3N0cnVjdCByYW5kb21fZXh0cm5nIHsK KysJc3NpemVfdCAoKmV4dHJuZ19yZWFkX2l0ZXIpKHN0cnVjdCBpb3ZfaXRlciAqaXRlciwgYm9v bCByZXNlZWQpOworKwlzdHJ1Y3QgbW9kdWxlICpvd25lcjsKKyt9OworKworIHN0cnVjdCBub3Rp Zmllcl9ibG9jazsKKyAKKyB2b2lkIGFkZF9kZXZpY2VfcmFuZG9tbmVzcyhjb25zdCB2b2lkICpi dWYsIHNpemVfdCBsZW4pOworQEAgLTEzNSw2ICsxNDIsOSBAQCBpbnQgcmFuZG9tX3ByZXBhcmVf Y3B1KHVuc2lnbmVkIGludCBjcHUpOworIGludCByYW5kb21fb25saW5lX2NwdSh1bnNpZ25lZCBp bnQgY3B1KTsKKyAjZW5kaWYKKyAKKyt2b2lkIHJhbmRvbV9yZWdpc3Rlcl9leHRybmcoY29uc3Qg c3RydWN0IHJhbmRvbV9leHRybmcgKnJuZyk7Cisrdm9pZCByYW5kb21fdW5yZWdpc3Rlcl9leHRy bmcodm9pZCk7CisrCisgI2lmbmRlZiBNT0RVTEUKKyBleHRlcm4gY29uc3Qgc3RydWN0IGZpbGVf b3BlcmF0aW9ucyByYW5kb21fZm9wcywgdXJhbmRvbV9mb3BzOworICNlbmRpZgorZGlmZiAtLWdp dCBhL2luY2x1ZGUvbGludXgvcmhfZmxhZ3MuaCBiL2luY2x1ZGUvbGludXgvcmhfZmxhZ3MuaAor bmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAwMC4uNGJiMGY1NTg1ZGYwCist LS0gL2Rldi9udWxsCisrKysgYi9pbmNsdWRlL2xpbnV4L3JoX2ZsYWdzLmgKK0BAIC0wLDAgKzEs MzQgQEAKKysvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAqLworKy8qCisrICog cmhfZmxhZ3MuaCAtLSBSZWQgSGF0IGZsYWdzIHRyYWNraW5nCisrICoKKysgKiBDb3B5cmlnaHQg KGMpIDIwMTggUmVkIEhhdCwgSW5jLiAtLSBKaXJpIEJlbmMgPGpiZW5jQHJlZGhhdC5jb20+Cisr ICoKKysgKiBUaGUgaW50ZW50IG9mIHRoZSBmbGFnIHRyYWNraW5nIGlzIHRvIHByb3ZpZGUgYmV0 dGVyIGFuZCBtb3JlIGZvY3VzZWQKKysgKiBzdXBwb3J0LiBPbmx5IHRob3NlIGZsYWdzIHRoYXQg YXJlIG9mIGEgc3BlY2lhbCBpbnRlcmVzdCBmb3IgY3VzdG9tZXIKKysgKiBzdXBwb3J0IHNob3Vs ZCBiZSB0cmFja2VkLgorKyAqCisrICogVEhFIEZMQUdTIERPIE5PVCBFWFBSRVNTIEFOWSBTVVBQ T1JUIFBPTElDSUVTLgorKyAqLworKworKyNpZm5kZWYgX0xJTlVYX1JIX0ZMQUdTX0gKKysjZGVm aW5lIF9MSU5VWF9SSF9GTEFHU19ICisrCisrI2lmIGRlZmluZWQgQ09ORklHX1JIRUxfRElGRkVS RU5DRVMKKytib29sIF9fcmhfYWRkX2ZsYWcoY29uc3QgY2hhciAqZmxhZ19uYW1lKTsKKyt2b2lk IHJoX3ByaW50X2ZsYWdzKHZvaWQpOworKworKyNkZWZpbmUgcmhfYWRkX2ZsYWcoZmxhZ19uYW1l KQkJCQkJCVwKKysoewkJCQkJCQkJCVwKKysJc3RhdGljIGJvb2wgX19tYXJrX29uY2UgX19yZWFk X21vc3RseTsJCQkJXAorKwlib29sIF9fcmV0X21hcmtfb25jZSA9ICFfX21hcmtfb25jZTsJCQkJ XAorKwkJCQkJCQkJCVwKKysJaWYgKCFfX21hcmtfb25jZSkJCQkJCQlcCisrCQlfX21hcmtfb25j ZSA9IF9fcmhfYWRkX2ZsYWcoZmxhZ19uYW1lKTsJCQlcCisrCXVubGlrZWx5KF9fcmV0X21hcmtf b25jZSk7CQkJCQlcCisrfSkKKysjZWxzZQorK3N0YXRpYyBpbmxpbmUgdm9pZCByaF9wcmludF9m bGFncyh2b2lkKSB7IH0KKytzdGF0aWMgaW5saW5lIHZvaWQgcmhfYWRkX2ZsYWcoY29uc3QgY2hh ciAqZmxhZ19uYW1lKSB7IH0KKysjZW5kaWYKKysjZW5kaWYKK2RpZmYgLS1naXQgYS9pbmNsdWRl L2xpbnV4L3JoX2thYmkuaCBiL2luY2x1ZGUvbGludXgvcmhfa2FiaS5oCituZXcgZmlsZSBtb2Rl IDEwMDY0NAoraW5kZXggMDAwMDAwMDAwMDAwLi41MTM5Y2IyY2FiZGMKKy0tLSAvZGV2L251bGwK KysrKyBiL2luY2x1ZGUvbGludXgvcmhfa2FiaS5oCitAQCAtMCwwICsxLDU0MSBAQAorKy8qCisr ICogcmhfa2FiaS5oIC0gUmVkIEhhdCBrQUJJIGFic3RyYWN0aW9uIGhlYWRlcgorKyAqCisrICog Q29weXJpZ2h0IChjKSAyMDE0IERvbiBaaWNrdXMKKysgKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAy MCBKaXJpIEJlbmMKKysgKiBDb3B5cmlnaHQgKGMpIDIwMTUgU2FicmluYSBEdWJyb2NhLCBIYW5u ZXMgRnJlZGVyaWMgU293YQorKyAqIENvcHlyaWdodCAoYykgMjAxNi0yMDE4IFByYXJpdCBCaGFy Z2F2YQorKyAqIENvcHlyaWdodCAoYykgMjAxNyBQYW9sbyBBYmVuaSwgTGFycnkgV29vZG1hbgor KyAqCisrICogVGhpcyBmaWxlIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSBHUEx2Mi4KKysgKiBTZWUg dGhlIGZpbGUgQ09QWUlORyBmb3IgbW9yZSBkZXRhaWxzLgorKyAqCisrICogVGhlc2Uga2FiaSBt YWNyb3MgaGlkZSB0aGUgY2hhbmdlcyBmcm9tIHRoZSBrYWJpIGNoZWNrZXIgYW5kIGZyb20gdGhl CisrICogcHJvY2VzcyB0aGF0IGNvbXB1dGVzIHRoZSBleHBvcnRlZCBzeW1ib2xzJyBjaGVja3N1 bXMuCisrICogVGhleSBoYXZlIDIgdmFyaWFudHM6IG9uZSAoZGVmaW5lZCB1bmRlciBfX0dFTktT WU1TX18pIHVzZWQgd2hlbgorKyAqIGdlbmVyYXRpbmcgdGhlIGNoZWNrc3VtcywgYW5kIHRoZSBv dGhlciB1c2VkIHdoZW4gYnVpbGRpbmcgdGhlIGtlcm5lbCdzCisrICogYmluYXJpZXMuCisrICoK KysgKiBUaGUgdXNlIG9mIHRoZXNlIG1hY3JvcyBkb2VzIG5vdCBndWFyYW50ZWUgdGhhdCB0aGUg dXNhZ2UgYW5kIG1vZGlmaWNhdGlvbgorKyAqIG9mIGNvZGUgaXMgY29ycmVjdC4gIEFzIHdpdGgg YWxsIFJlZCBIYXQgb25seSBjaGFuZ2VzLCBhbiBlbmdpbmVlciBtdXN0CisrICogZXhwbGFpbiB3 aHkgdGhlIHVzZSBvZiB0aGUgbWFjcm8gaXMgdmFsaWQgaW4gdGhlIHBhdGNoIGNvbnRhaW5pbmcg dGhlCisrICogY2hhbmdlcy4KKysgKgorKyAqLworKworKyNpZm5kZWYgX0xJTlVYX1JIX0tBQklf SAorKyNkZWZpbmUgX0xJTlVYX1JIX0tBQklfSAorKworKyNpbmNsdWRlIDxsaW51eC9rY29uZmln Lmg+CisrI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CisrI2luY2x1ZGUgPGxpbnV4L3N0cmlu Z2lmeS5oPgorKworKy8qCisrICogTk9URQorKyAqICAgVW5sZXNzIGluZGljYXRlZCBvdGhlcndp c2UsIGRvbid0IHVzZSAnOycgYWZ0ZXIgdGhlc2UgbWFjcm9zIGFzIGl0CisrICogICBtZXNzZXMg dXAgdGhlIGtBQkkgY2hlY2tlciBieSBjaGFuZ2luZyB3aGF0IHRoZSByZXN1bHRpbmcgdG9rZW4g c3RyaW5nCisrICogICBsb29rcyBsaWtlLiAgSW5zdGVhZCBsZXQgdGhlIG1hY3JvcyBhZGQgdGhl ICc7JyBzbyBpdCBjYW4gYmUgcHJvcGVybHkKKysgKiAgIGhpZGRlbiBmcm9tIHRoZSBrQUJJIGNo ZWNrZXIgKG1haW5seSBmb3IgUkhfS0FCSV9FWFRFTkQsIGJ1dCBhcHBsaWVkIHRvCisrICogICBt b3N0IG1hY3JvcyBmb3IgdW5pZm9ybWl0eSkuCisrICoKKysgKgorKyAqIFJIX0tBQklfQ09OU1QK KysgKiAgIEFkZHMgYSBuZXcgY29uc3QgbW9kaWZpZXIgdG8gYSBmdW5jdGlvbiBwYXJhbWV0ZXIg cHJlc2VydmluZyB0aGUgb2xkCisrICogICBjaGVja3N1bS4KKysgKgorKyAqIFJIX0tBQklfQURE X01PRElGSUVSCisrICogICBBZGRzIGEgbmV3IG1vZGlmaWVyIHRvIGEgZnVuY3Rpb24gcGFyYW1l dGVyIG9yIGEgdHlwZWRlZiwgcHJlc2VydmluZworKyAqICAgdGhlIG9sZCBjaGVja3N1bS4gIFVz ZWZ1bCBlLmcuIGZvciBhZGRpbmcgcmN1IGFubm90YXRpb25zIG9yIGNoYW5naW5nCisrICogICBp bnQgdG8gdW5zaWduZWQuICBCZXdhcmUgdGhhdCB0aGlzIG1heSBjaGFuZ2UgdGhlIHNlbWFudGlj czsgaWYgeW91J3JlCisrICogICBzdXJlIHRoaXMgaXMgc2FmZSwgYWx3YXlzIGV4cGxhaW4gd2h5 IGJpbmFyeSBjb21wYXRpYmlsaXR5IHdpdGggM3JkCisrICogICBwYXJ0eSBtb2R1bGVzIGlzIHJl dGFpbmVkLgorKyAqCisrICogUkhfS0FCSV9ERVBSRUNBVEUKKysgKiAgIE1hcmtzIHRoZSBlbGVt ZW50IGFzIGRlcHJlY2F0ZWQgYW5kIG1ha2UgaXQgdW51c2FibGUgYnkgbW9kdWxlcyB3aGlsZQor KyAqICAga2VlcGluZyBhIGhvbGUgaW4gaXRzIHBsYWNlIHRvIHByZXNlcnZlIGJpbmFyeSBjb21w YXRpYmlsaXR5LgorKyAqCisrICogUkhfS0FCSV9ERVBSRUNBVEVfRk4KKysgKiAgIE1hcmtzIHRo ZSBmdW5jdGlvbiBwb2ludGVyIGFzIGRlcHJlY2F0ZWQgYW5kIG1ha2UgaXQgdW51c2FibGUgYnkg bW9kdWxlcworKyAqICAgd2hpbGUga2VlcGluZyBhIGhvbGUgaW4gaXRzIHBsYWNlIHRvIHByZXNl cnZlIGJpbmFyeSBjb21wYXRpYmlsaXR5LgorKyAqCisrICogUkhfS0FCSV9FWFRFTkQKKysgKiAg IEFkZHMgYSBuZXcgZmllbGQgdG8gYSBzdHJ1Y3QuICBUaGlzIG11c3QgYWx3YXlzIGJlIGFkZGVk IHRvIHRoZSBlbmQgb2YKKysgKiAgIHRoZSBzdHJ1Y3QuICBCZWZvcmUgdXNpbmcgdGhpcyBtYWNy bywgbWFrZSBzdXJlIHRoaXMgaXMgYWN0dWFsbHkgc2FmZQorKyAqICAgdG8gZG8gLSB0aGVyZSBp cyBhIG51bWJlciBvZiBjb25kaXRpb25zIHVuZGVyIHdoaWNoIGl0IGlzICpub3QqIHNhZmUuCisr ICogICBJbiBwYXJ0aWN1bGFyIChidXQgbm90IGxpbWl0ZWQgdG8pLCB0aGlzIG1hY3JvIGNhbm5v dCBiZSB1c2VkOgorKyAqICAgLSBpZiB0aGUgc3RydWN0IGluIHF1ZXN0aW9uIGlzIGVtYmVkZGVk IGluIGFub3RoZXIgc3RydWN0LCBvcgorKyAqICAgLSBpZiB0aGUgc3RydWN0IGlzIGFsbG9jYXRl ZCBieSBkcml2ZXJzIGVpdGhlciBzdGF0aWNhbGx5IG9yCisrICogICAgIGR5bmFtaWNhbGx5LCBv cgorKyAqICAgLSBpZiB0aGUgc3RydWN0IGlzIGFsbG9jYXRlZCB0b2dldGhlciB3aXRoIGRyaXZl ciBkYXRhIChhbiBleGFtcGxlIG9mCisrICogICAgIHN1Y2ggYmVoYXZpb3IgaXMgc3RydWN0IG5l dF9kZXZpY2Ugb3Igc3RydWN0IHJlcXVlc3QpLgorKyAqCisrICogUkhfS0FCSV9FWFRFTkRfV0lU SF9TSVpFCisrICogICBBZGRzIGEgbmV3IGVsZW1lbnQgKHVzdWFsbHkgYSBzdHJ1Y3QpIHRvIGEg c3RydWN0IGFuZCByZXNlcnZlcyBleHRyYQorKyAqICAgc3BhY2UgZm9yIHRoZSBuZXcgZWxlbWVu dC4gIFRoZSBwcm92aWRlZCAnc2l6ZScgaXMgdGhlIHRvdGFsIHNwYWNlIHRvCisrICogICBiZSBh ZGRlZCBpbiBsb25ncyAoaS5lLiBpdCdzIDggKiAnc2l6ZScgYnl0ZXMpLCBpbmNsdWRpbmcgdGhl IHNpemUgb2YKKysgKiAgIHRoZSBhZGRlZCBlbGVtZW50LiAgSXQgaXMgYXV0b21hdGljYWxseSBj aGVja2VkIHRoYXQgdGhlIG5ldyBlbGVtZW50CisrICogICBkb2VzIG5vdCBvdmVyZmxvdyB0aGUg cmVzZXJ2ZWQgc3BhY2UsIG5vdyBub3IgaW4gdGhlIGZ1dHVyZS4gSG93ZXZlciwKKysgKiAgIG5v IGF0dGVtcHQgaXMgZG9uZSB0byBjaGVjayB0aGUgY29udGVudCBvZiB0aGUgYWRkZWQgZWxlbWVu dCAoc3RydWN0KQorKyAqICAgZm9yIGtBQkkgY29uZm9ybWFuY2UgLSBrQUJJIGNoZWNraW5nIGlu c2lkZSB0aGUgYWRkZWQgZWxlbWVudCBpcworKyAqICAgZWZmZWN0aXZlbHkgc3dpdGNoZWQgb2Zm LgorKyAqICAgRm9yIGFueSBzdHJ1Y3QgYmVpbmcgYWRkZWQgYnkgUkhfS0FCSV9FWFRFTkRfV0lU SF9TSVpFLCBpdCBpcworKyAqICAgcmVjb21tZW5kZWQgaXRzIGNvbnRlbnQgdG8gYmUgZG9jdW1l bnRlZCBhcyBub3QgY292ZXJlZCBieSBrQUJJCisrICogICBndWFyYW50ZWUuCisrICoKKysgKiBS SF9LQUJJX0ZJTExfSE9MRQorKyAqICAgRmlsbHMgYSBob2xlIGluIGEgc3RydWN0LgorKyAqCisr ICogICBXYXJuaW5nOiBvbmx5IHVzZSBpZiBhIGhvbGUgZXhpc3RzIGZvciBfYWxsXyBhcmNoZXMu ICBVc2UgcGFob2xlIHRvIHZlcmlmeS4KKysgKgorKyAqIFJIX0tBQklfUkVOQU1FCisrICogICBS ZW5hbWVzIGFuIGVsZW1lbnQgd2l0aG91dCBjaGFuZ2luZyBpdHMgdHlwZS4gIFRoaXMgbWFjcm8g Y2FuIGJlIHVzZWQgaW4KKysgKiAgIGJpdGZpZWxkcywgZm9yIGV4YW1wbGUuCisrICoKKysgKiAg IE5PVEU6IHRoaXMgbWFjcm8gZG9lcyBub3QgYWRkIHRoZSBmaW5hbCAnOycKKysgKgorKyAqIFJI X0tBQklfUkVQTEFDRQorKyAqICAgUmVwbGFjZXMgdGhlIF9vcmlnIGZpZWxkIGJ5IHRoZSBfbmV3 IGZpZWxkLiAgVGhlIHNpemUgb2YgdGhlIG9jY3VwaWVkCisrICogICBzcGFjZSBpcyBwcmVzZXJ2 ZWQsIGl0J3MgZmluZSBpZiB0aGUgX25ldyBmaWVsZCBpcyBzbWFsbGVyIHRoYW4gdGhlCisrICog ICBfb3JpZyBmaWVsZC4gIElmIGEgX25ldyBmaWVsZCBpcyBsYXJnZXIgb3IgaGFzIGEgZGlmZmVy ZW50IGFsaWdubWVudCwKKysgKiAgIGNvbXBpbGF0aW9uIHdpbGwgYWJvcnQuCisrICoKKysgKiBS SF9LQUJJX1JFUExBQ0VfU1BMSVQKKysgKiAgIFdvcmtzIHRoZSBzYW1lIGFzIFJIX0tBQklfUkVQ TEFDRSBidXQgcmVwbGFjZXMgYSBzaW5nbGUgX29yaWcgZmllbGQgYnkKKysgKiAgIG11bHRpcGxl IG5ldyBmaWVsZHMuICBUaGUgY2hlY2tzIGZvciBzaXplIGFuZCBhbGlnbm1lbnQgZG9uZSBieQor KyAqICAgUkhfS0FCSV9SRVBMQUNFIGFyZSBzdGlsbCBhcHBsaWVkLgorKyAqCisrICogUkhfS0FC SV9ISURFX0lOQ0xVREUKKysgKiAgIEhpZGVzIHRoZSBnaXZlbiBpbmNsdWRlIGZpbGUgZnJvbSBr QUJJIGNoZWNrc3VtIGNvbXB1dGF0aW9ucy4gIFRoaXMgaXMKKysgKiAgIHVzZWQgd2hlbiBhIG5l d2x5IGFkZGVkICNpbmNsdWRlIG1ha2VzIGEgcHJldmlvdXNseSBvcGFxdWUgc3RydWN0CisrICog ICB2aXNpYmxlLgorKyAqCisrICogICBFeGFtcGxlIHVzYWdlOgorKyAqICAgI2luY2x1ZGUgUkhf S0FCSV9ISURFX0lOQ0xVREUoPGxpbnV4L3BvbGwuaD4pCisrICoKKysgKiBSSF9LQUJJX0ZBS0Vf SU5DTFVERQorKyAqICAgUHJldGVuZHMgaW5jbHVzaW9uIG9mIHRoZSBnaXZlbiBmaWxlIGZvciBr QUJJIGNoZWNrc3VtIGNvbXB1dGF0aW9ucy4KKysgKiAgIFRoaXMgaXMgdXNlZCB3aGVuIHVwc3Ry ZWFtIHJlbW92ZWQgYSBwYXJ0aWN1bGFyICNpbmNsdWRlIGJ1dCB0aGF0IG1hZGUKKysgKiAgIHNv bWUgc3RydWN0dXJlcyBvcGFxdWUgdGhhdCB3ZXJlIHByZXZpb3VzbHkgdmlzaWJsZSBhbmQgaXMg Y2F1c2luZyBrQUJJCisrICogICBjaGVja2VyIGZhaWx1cmVzLgorKyAqCisrICogICBFeGFtcGxl IHVzYWdlOgorKyAqICAgI2luY2x1ZGUgUkhfS0FCSV9GQUtFX0lOQ0xVREUoPGxpbnV4L3JoYXNo dGFibGUuaD4pCisrICoKKysgKiBSSF9LQUJJX1JFU0VSVkUKKysgKiAgIEFkZHMgYSByZXNlcnZl ZCBmaWVsZCB0byBhIHN0cnVjdC4gIFRoaXMgaXMgZG9uZSBwcmlvciB0byBrQUJJIGZyZWV6ZQor KyAqICAgZm9yIHN0cnVjdHMgdGhhdCBjYW5ub3QgYmUgZXhwYW5kZWQgbGF0ZXIgdXNpbmcgUkhf S0FCSV9FWFRFTkQgKGZvcgorKyAqICAgZXhhbXBsZSBiZWNhdXNlIHRoZXkgYXJlIGVtYmVkZGVk IGluIGFub3RoZXIgc3RydWN0IG9yIGJlY2F1c2UgdGhleSBhcmUKKysgKiAgIGFsbG9jYXRlZCBi eSBkcml2ZXJzIG9yIGJlY2F1c2UgdGhleSB1c2UgdW51c3VhbCBtZW1vcnkgbGF5b3V0KS4gIFRo ZQorKyAqICAgc2l6ZSBvZiB0aGUgcmVzZXJ2ZWQgZmllbGQgaXMgJ3Vuc2lnbmVkIGxvbmcnIGFu ZCBpcyBhc3N1bWVkIHRvIGJlCisrICogICA4IGJ5dGVzLgorKyAqCisrICogICBUaGUgYXJndW1l bnQgaXMgYSBudW1iZXIgdW5pcXVlIGZvciB0aGUgZ2l2ZW4gc3RydWN0OyB1c3VhbGx5LCBtdWx0 aXBsZQorKyAqICAgUkhfS0FCSV9SRVNFUlZFIG1hY3JvcyBhcmUgYWRkZWQgdG8gYSBzdHJ1Y3Qg d2l0aCBudW1iZXJzIHN0YXJ0aW5nIGZyb20KKysgKiAgIG9uZS4KKysgKgorKyAqICAgRXhhbXBs ZSB1c2FnZToKKysgKiAgIHN0cnVjdCBmb28geworKyAqICAgICAgICAgICBpbnQgYTsKKysgKiAg ICAgICAgICAgUkhfS0FCSV9SRVNFUlZFKDEpCisrICogICAgICAgICAgIFJIX0tBQklfUkVTRVJW RSgyKQorKyAqICAgICAgICAgICBSSF9LQUJJX1JFU0VSVkUoMykKKysgKiAgICAgICAgICAgUkhf S0FCSV9SRVNFUlZFKDQpCisrICogICB9OworKyAqCisrICogUkhfS0FCSV9VU0UKKysgKiAgIFVz ZXMgYSBwcmV2aW91c2x5IHJlc2VydmVkIGZpZWxkIG9yIG11bHRpcGxlIGZpZWxkcy4gIFRoZSBh cmd1bWVudHMgYXJlCisrICogICBvbmUgb3IgbW9yZSBudW1iZXJzIGFzc2lnbmVkIHRvIFJIX0tB QklfUkVTRVJWRSwgZm9sbG93ZWQgYnkgYSBmaWVsZCB0bworKyAqICAgYmUgcHV0IGluIHRoZWly IHBsYWNlLiAgVGhlIGNvbXBpbGVyIGVuc3VyZXMgdGhhdCB0aGUgbmV3IGZpZWxkIGlzIG5vdAor KyAqICAgbGFyZ2VyIHRoYW4gdGhlIHJlc2VydmVkIGFyZWEuCisrICoKKysgKiAgIEV4YW1wbGUg dXNhZ2U6CisrICogICBzdHJ1Y3QgZm9vIHsKKysgKiAgICAgICAgICAgaW50IGE7CisrICogICAg ICAgICAgIFJIX0tBQklfVVNFKDEsIGludCBiKQorKyAqICAgICAgICAgICBSSF9LQUJJX1VTRSgy LCAzLCBpbnQgY1szXSkKKysgKiAgICAgICAgICAgUkhfS0FCSV9SRVNFUlZFKDQpCisrICogICB9 OworKyAqCisrICogUkhfS0FCSV9VU0VfU1BMSVQKKysgKiAgIFdvcmtzIHRoZSBzYW1lIGFzIFJI X0tBQklfVVNFIGJ1dCByZXBsYWNlcyBhIHNpbmdsZSByZXNlcnZlZCBmaWVsZCBieQorKyAqICAg bXVsdGlwbGUgbmV3IGZpZWxkcy4KKysgKgorKyAqIFJIX0tBQklfQVVYX0VNQkVECisrICogUkhf S0FCSV9BVVhfUFRSCisrICogICBBZGRzIGFuIGV4dGVuc3Rpb24gb2YgYSBzdHJ1Y3QgaW4gdGhl IGZvcm0gb2YgImF1eGlsaWFyeSBzdHJ1Y3R1cmUiLgorKyAqICAgVGhpcyBpcyBkb25lIHByaW9y IHRvIGtBQkkgZnJlZXplIGZvciBzdHJ1Y3RzIHRoYXQgY2Fubm90IGJlIGV4cGFuZGVkCisrICog ICBsYXRlciB1c2luZyBSSF9LQUJJX0VYVEVORC4gIFNlZSBhbHNvIFJIX0tBQklfUkVTRVJWRUQs IHRoZXNlIHR3bworKyAqICAgYXBwcm9hY2hlcyBjYW4gKGFuZCBvZnRlbiBhcmUpIGNvbWJpbmVk LgorKyAqCisrICogICBUbyB1c2UgdGhpcyBmb3IgJ3N0cnVjdCBmb28nICh0aGUgImJhc2Ugc3Ry dWN0dXJlIiksIGRlZmluZSBhIG5ldworKyAqICAgc3RydWN0dXJlIGNhbGxlZCAnc3RydWN0IGZv b19yaCc7IHRoaXMgbmV3IHN0cnVjdCBpcyBjYWxsZWQgImF1eGlsaWFyeQorKyAqICAgc3RydWN0 dXJlIi4gIFRoZW4gYWRkIFJIX0tBQklfQVVYX0VNQkVEIG9yIFJIX0tBQklfQVVYX1BUUiB0byB0 aGUgZW5kCisrICogICBvZiB0aGUgYmFzZSBzdHJ1Y3R1cmUuICBUaGUgYXJndW1lbnQgaXMgdGhl IG5hbWUgb2YgdGhlIGJhc2Ugc3RydWN0dXJlLAorKyAqICAgd2l0aG91dCB0aGUgJ3N0cnVjdCcg a2V5d29yZC4KKysgKgorKyAqICAgUkhfS0FCSV9BVVhfUFRSIHN0b3JlcyBhIHBvaW50ZXIgdG8g dGhlIGF1eCBzdHJ1Y3R1cmUgaW4gdGhlIGJhc2UKKysgKiAgIHN0cnVjdC4gIFRoZSBsaWZlY3lj bGUgb2YgdGhlIGF1eCBzdHJ1Y3QgbmVlZHMgdG8gYmUgcHJvcGVybHkgdGFrZW4KKysgKiAgIGNh cmUgb2YuCisrICoKKysgKiAgIFJIX0tBQklfQVVYX0VNQkVEIGVtYmVkcyB0aGUgYXV4IHN0cnVj dCBpbnRvIHRoZSBiYXNlIHN0cnVjdC4gIFRoaXMKKysgKiAgIGNhbm5vdCBiZSB1c2VkIHdoZW4g dGhlIGJhc2Ugc3RydWN0IGlzIGl0c2VsZiBlbWJlZGRlZCBpbnRvIGFub3RoZXIKKysgKiAgIHN0 cnVjdCwgYWxsb2NhdGVkIGluIGFuIGFycmF5LCBldGMuCisrICoKKysgKiAgIEJvdGggYXBwcm9h Y2hlcyAocHRyIGFuZCBlbWJlZCkgd29yayBjb3JyZWN0bHkgZXZlbiB3aGVuIHRoZSBhdXggc3Ry dWN0CisrICogICBpcyBhbGxvY2F0ZWQgYnkgbW9kdWxlcy4gIFRvIGVuc3VyZSB0aGlzLCB0aGUg Y29kZSByZXNwb25zaWJsZSBmb3IKKysgKiAgIGFsbG9jYXRpb24vYXNzaWdubWVudCBvZiB0aGUg YXV4IHN0cnVjdCBoYXMgdG8gcHJvcGVybHkgc2V0IHRoZSBzaXplIG9mCisrICogICB0aGUgYXV4 IHN0cnVjdDsgc2VlIHRoZSBSSF9LQUJJX0FVWF9TRVRfU0laRSBhbmQgUkhfS0FCSV9BVVhfSU5J VF9TSVpFCisrICogICBtYWNyb3MuCisrICoKKysgKiAgIE5ldyBmaWVsZHMgY2FuIGJlIGxhdGVy IGFkZGVkIHRvIHRoZSBhdXhpbGlhcnkgc3RydWN0dXJlLCBhbHdheXMgdG8gaXRzCisrICogICBl bmQuICBOb3RlIHRoZSBhdXhpbGlhcnkgc3RydWN0dXJlIGNhbm5vdCBiZSBzaHJ1bmsgaW4gc2l6 ZSBsYXRlciAoaS5lLiwKKysgKiAgIGZpZWxkcyBjYW5ub3QgYmUgcmVtb3ZlZCwgb25seSBkZXBy ZWNhdGVkKS4gIEFueSBjb2RlIGFjY2Vzc2luZyBmaWVsZHMKKysgKiAgIGZyb20gdGhlIGF1eCBz dHJ1Y3QgbXVzdCBndWFyZCB0aGUgYWNjZXNzIHVzaW5nIHRoZSBSSF9LQUJJX0FVWCBtYWNyby4K KysgKiAgIFRoZSBhY2Nlc3MgaXRzZWxmIGlzIHRoZW4gZG9uZSB2aWEgYSAnX3JoJyBmaWVsZCBp biB0aGUgYmFzZSBzdHJ1Y3QuCisrICoKKysgKiAgIFRoZSBhdXhpbGlhcnkgc3RydWN0dXJlIGlz IG5vdCBndWFyYW50ZWVkIGZvciBhY2Nlc3MgYnkgbW9kdWxlcyB1bmxlc3MKKysgKiAgIGV4cGxp Y2l0bHkgY29tbWVudGVkIGFzIHN1Y2ggaW4gdGhlIGRlY2xhcmF0aW9uIG9mIHRoZSBhdXggc3Ry dWN0CisrICogICBpdHNlbGYgb3Igc29tZSBvZiBpdHMgZWxlbWVudHMuCisrICoKKysgKiAgIEV4 YW1wbGU6CisrICoKKysgKiAgIHN0cnVjdCBmb29fcmggeworKyAqICAgICAgICAgICBpbnQgbmV3 bHlfYWRkZWQ7CisrICogICB9OworKyAqCisrICogICBzdHJ1Y3QgZm9vIHsKKysgKiAgICAgICAg ICAgYm9vbCBiaWdfaGFtbWVyOworKyAqICAgICAgICAgICBSSF9LQUJJX0FVWF9QVFIoZm9vKQor KyAqICAgfTsKKysgKgorKyAqICAgdm9pZCB1c2Uoc3RydWN0IGZvbyAqZikKKysgKiAgIHsKKysg KiAgICAgICAgICAgaWYgKFJIX0tBQklfQVVYKGYsIGZvbywgbmV3bHlfYWRkZWQpKQorKyAqICAg ICAgICAgICAgICAgICAgIGYtPl9yaC0+bmV3bHlfYWRkZWQgPSAxMjM7CisrICoJICAgICBlbHNl CisrICoJICAgICAgICAgICAgIC8vIHRoZSBmaWVsZCAnbmV3bHlfYWRkZWQnIGlzIG5vdCBwcmVz ZW50IGluIHRoZSBwYXNzZWQKKysgKgkgICAgICAgICAgICAgLy8gc3RydWN0LCBmYWxsIGJhY2sg dG8gb2xkIGJlaGF2aW9yCisrICoJICAgICAgICAgICAgIGYtPmJpZ19oYW1tZXIgPSB0cnVlOwor KyAqICAgfQorKyAqCisrICogICBzdGF0aWMgc3RydWN0IGZvb19yaCBteV9mb29fcmggeworKyAq ICAgICAgICAgICAubmV3bHlfYWRkZWQgPSAwOworKyAqICAgfQorKyAqCisrICogICBzdGF0aWMg c3RydWN0IGZvbyBteV9mb28gPSB7CisrICogICAgICAgICAgIC5iaWdfaGFtbWVyID0gZmFsc2Us CisrICogICAgICAgICAgIC5fcmggPSAmbXlfZm9vX3JoLAorKyAqICAgICAgICAgICBSSF9LQUJJ X0FVWF9JTklUX1NJWkUoZm9vKQorKyAqICAgfTsKKysgKgorKyAqIFJIX0tBQklfVVNFX0FVWF9Q VFIKKysgKiAgIENyZWF0ZXMgYW4gYXV4aWxpYXJ5IHN0cnVjdHVyZSBwb3N0IGtBQkkgZnJlZXpl LiAgVGhpcyB3b3JrcyBieSB1c2luZworKyAqICAgdHdvIHJlc2VydmVkIGZpZWxkcyAodGh1cyB0 aGVyZSBoYXMgdG8gYmUgdHdvIHJlc2VydmVkIGZpZWxkcyBzdGlsbAorKyAqICAgYXZhaWxhYmxl KSBhbmQgY29udmVydGluZyB0aGVtIHRvIFJIX0tBQklfQVVYX1BUUi4KKysgKgorKyAqICAgRXhh bXBsZToKKysgKgorKyAqICAgc3RydWN0IGZvb19yaCB7CisrICogICB9OworKyAqCisrICogICBz dHJ1Y3QgZm9vIHsKKysgKiAgICAgICAgICAgaW50IGE7CisrICogICAgICAgICAgIFJIX0tBQklf UkVTRVJWRSgxKQorKyAqICAgICAgICAgICBSSF9LQUJJX1VTRV9BVVhfUFRSKDIsIDMsIGZvbykK KysgKiAgIH07CisrICoKKysgKiBSSF9LQUJJX0FVWF9TRVRfU0laRQorKyAqIFJIX0tBQklfQVVY X0lOSVRfU0laRQorKyAqICAgQ2FsY3VsYXRlcyBhbmQgc3RvcmVzIHRoZSBzaXplIG9mIHRoZSBh dXhpbGlhcnkgc3RydWN0dXJlLgorKyAqCisrICogICBSSF9LQUJJX0FVWF9TRVRfU0laRSBpcyBm b3IgZHluYW1pY2FsbHkgYWxsb2NhdGVkIGJhc2Ugc3RydWN0cywKKysgKiAgIFJIX0tBQklfQVVY X0lOSVRfU0laRSBpcyBmb3Igc3RhdGljYWxseSBhbGxvY2F0ZWQgY2FzZSBzdHJ1Y3RzLgorKyAq CisrICogICBUaGVzZSBtYWNyb3MgbXVzdCBiZSBjYWxsZWQgZnJvbSB0aGUgYWxsb2NhdGlvbiAo UkhfS0FCSV9BVVhfU0VUX1NJWkUpCisrICogICBvciBkZWNsYXJhdGlvbiAoUkhfS0FCSV9BVVhf SU5JVF9TSVpFKSBzaXRlLCByZWdhcmRsZXNzIG9mIHdoZXRoZXIKKysgKiAgIHRoYXQgaGFwcGVu cyBpbiB0aGUga2VybmVsIG9yIGluIGEgbW9kdWxlLiAgV2l0aG91dCBjYWxsaW5nIG9uZSBvZgor KyAqICAgdGhlc2UgbWFjcm9zLCB0aGUgYXV4IHN0cnVjdCB3aWxsIGFwcGVhciB0byBoYXZlIG5v IGZpZWxkcyB0byB0aGUKKysgKiAgIGtlcm5lbC4KKysgKgorKyAqICAgTm90ZTogc2luY2UgUkhf S0FCSV9BVVhfU0VUX1NJWkUgaXMgaW50ZW5kZWQgdG8gYmUgaW52b2tlZCBvdXRzaWRlIG9mCisr ICogICBhIHN0cnVjdCBkZWZpbml0aW9uLCBpdCBkb2VzIG5vdCBhZGQgdGhlIHNlbWljb2xvbiBh bmQgbXVzdCBiZQorKyAqICAgdGVybWluYXRlZCBieSBzZW1pY29sb24gYnkgdGhlIGNhbGxlci4K KysgKgorKyAqIFJIX0tBQklfQVVYCisrICogICBWZXJpZmllcyB0aGF0IHRoZSBnaXZlbiBmaWVs ZCBleGlzdHMgaW4gdGhlIGdpdmVuIGF1eGlsaWFyeSBzdHJ1Y3R1cmUuCisrICogICBUaGlzIE1V U1QgYmUgY2FsbGVkIHByaW9yIHRvIGFjY2Vzc2luZyB0aGF0IGZpZWxkOyBmYWlsaW5nIHRvIGRv IHRoYXQKKysgKiAgIG1heSBsZWFkIHRvIGludmFsaWQgbWVtb3J5IGFjY2Vzcy4KKysgKgorKyAq ICAgVGhlIGZpcnN0IGFyZ3VtZW50IGlzIGEgcG9pbnRlciB0byB0aGUgYmFzZSBzdHJ1Y3QsIHRo ZSBzZWNvbmQgYXJndW1lbnQKKysgKiAgIGlzIHRoZSBuYW1lIG9mIHRoZSBiYXNlIHN0cnVjdCAo d2l0aG91dCB0aGUgJ3N0cnVjdCcga2V5d29yZCksIHRoZQorKyAqICAgdGhpcmQgYXJndW1lbnQg aXMgdGhlIGZpZWxkIG5hbWUuCisrICoKKysgKiAgIFRoaXMgbWFjcm8gd29ya3MgZm9yIHN0cnVj dHMgZXh0ZW5kZWQgYnkgZWl0aGVyIG9mIFJIX0tBQklfQVVYX0VNQkVELAorKyAqICAgUkhfS0FC SV9BVVhfUFRSIGFuZCBSSF9LQUJJX1VTRV9BVVhfUFRSLgorKyAqCisrICogUkhfS0FCSV9GT1JD RV9DSEFOR0UKKysgKiAgIEZvcmNlIGNoYW5nZSBvZiB0aGUgc3ltYm9sIGNoZWNrc3VtLiAgVGhl IGFyZ3VtZW50IG9mIHRoZSBtYWNybyBpcyBhCisrICogICB2ZXJzaW9uIGZvciBjYXNlcyB3ZSBu ZWVkIHRvIGRvIHRoaXMgbW9yZSB0aGFuIG9uY2UuCisrICoKKysgKiAgIFRoaXMgbWFjcm8gZG9l cyB0aGUgb3Bwb3NpdGU6IGl0IGNoYW5nZXMgdGhlIHN5bWJvbCBjaGVja3N1bSB3aXRob3V0Cisr ICogICBhY3R1YWxseSBjaGFuZ2luZyBhbnl0aGluZyBhYm91dCB0aGUgZXhwb3J0ZWQgc3ltYm9s LiAgSXQgaXMgdXNlZnVsIGZvcgorKyAqICAgc3ltYm9scyB0aGF0IGFyZSBub3Qgd2hpdGVsaXN0 ZWQsIHdlJ3JlIGNoYW5naW5nIHRoZW0gaW4gYW4KKysgKiAgIGluY29tcGF0aWJsZSB3YXkgYW5k IHdhbnQgdG8gcHJldmVudCAzcmQgcGFydHkgbW9kdWxlcyB0byBzaWxlbnRseQorKyAqICAgY29y cnVwdCBtZW1vcnkuICBJbnN0ZWFkLCBieSBjaGFuZ2luZyB0aGUgc3ltYm9sIGNoZWNrc3VtLCBz dWNoIG1vZHVsZXMKKysgKiAgIHdvbid0IGJlIGxvYWRlZCBieSB0aGUga2VybmVsLiAgVGhpcyBt YWNybyBzaG91bGQgb25seSBiZSB1c2VkIGFzIGEKKysgKiAgIGxhc3QgcmVzb3J0IHdoZW4gYWxs IG90aGVyIEtBQkkgd29ya2Fyb3VuZHMgaGF2ZSBmYWlsZWQuCisrICoKKysgKiBSSF9LQUJJX0VY Q0xVREUKKysgKiAgICEhISBXQVJOSU5HOiBEQU5HRVJPVVMsIERPIE5PVCBVU0UgdW5sZXNzIHlv dSBhcmUgYXdhcmUgb2YgYWxsIHRoZSAhISEKKysgKiAgICEhISBpbXBsaWNhdGlvbnMuIFRoaXMg c2hvdWxkIGJlIHVzZWQgT05MWSBFWENFUFRJT05BTExZIGFuZCBvbmx5ICAhISEKKysgKiAgICEh ISB1bmRlciBzcGVjaWZpYyBjaXJjdW1zdGFuY2VzLiBWZXJ5IGxpa2VseSwgdGhpcyBtYWNybyBk b2VzIG5vdCAhISEKKysgKiAgICEhISBkbyB3aGF0IHlvdSBleHBlY3QgaXQgdG8gZG8uIE5vdGUg dGhhdCBhbnkgdXNhZ2Ugb2YgdGhpcyBtYWNybyAhISEKKysgKiAgICEhISBNVVNUIGJlIHBhaXJl ZCB3aXRoIGEgUkhfS0FCSV9GT1JDRV9DSEFOR0UgYW5ub3RhdGlvbiBvZiAgICAgICAhISEKKysg KiAgICEhISBhIHN1aXRhYmxlIHN5bWJvbCAob3IgYW4gZXF1aXZhbGVudCBzYWZlZ3VhcmQpIGFu ZCB0aGUgY29tbWl0ICAhISEKKysgKiAgICEhISBsb2cgTVVTVCBleHBsYWluIHdoeSB0aGUgY2hv c2VuIHNvbHV0aW9uIGlzIGFwcHJvcHJpYXRlLiAgICAgICAhISEKKysgKgorKyAqICAgRXhjbHVk ZSB0aGUgZWxlbWVudCBmcm9tIGNoZWNrc3VtIGdlbmVyYXRpb24uICBBbnkgc3VjaCBlbGVtZW50 IGlzCisrICogICBjb25zaWRlcmVkIG5vdCB0byBiZSBwYXJ0IG9mIHRoZSBrQUJJIHdoaXRlbGlz dCBhbmQgbWF5IGJlIGNoYW5nZWQgYXQKKysgKiAgIHdpbGwuICBOb3RlIGhvd2V2ZXIgdGhhdCBp dCdzIHRoZSByZXNwb25zaWJpbGl0eSBvZiB0aGUgZGV2ZWxvcGVyCisrICogICBjaGFuZ2luZyB0 aGUgZWxlbWVudCB0byBlbnN1cmUgM3JkIHBhcnR5IGRyaXZlcnMgdXNpbmcgdGhpcyBlbGVtZW50 CisrICogICB3b24ndCBwYW5pYywgZm9yIGV4YW1wbGUgYnkgbm90IGFsbG93aW5nIHRoZW0gdG8g YmUgbG9hZGVkLiAgVGhhdCBjYW4KKysgKiAgIGJlIGFjaGlldmVkIGJ5IGNoYW5naW5nIGFub3Ro ZXIsIG5vbi13aGl0ZWxpc3RlZCBzeW1ib2wgdGhleSB1c2UsCisrICogICBlaXRoZXIgYnkgbmF0 dXJlIG9mIHRoZSBjaGFuZ2Ugb3IgYnkgdXNpbmcgUkhfS0FCSV9GT1JDRV9DSEFOR0UuCisrICoK KysgKiAgIEFsc28gbm90ZSB0aGF0IGFueSBjaGFuZ2UgdG8gdGhlIGVsZW1lbnQgbXVzdCBwcmVz ZXJ2ZSBpdHMgc2l6ZS4gQ2hhbmdlCisrICogICBvZiB0aGUgc2l6ZSBpcyBub3QgYWxsb3dlZCBh bmQgd291bGQgY29uc3RpdHV0ZSBhIHNpbGVudCBrQUJJIGJyZWFrYWdlLgorKyAqICAgQmV3YXJl IHRoYXQgdGhlIFJIX0tBQklfRVhDTFVERSBtYWNybyBkb2VzIG5vdCBkbyBhbnkgc2l6ZSBjaGVj a3MuCisrICoKKysgKiBSSF9LQUJJX0VYQ0xVREVfV0lUSF9TSVpFCisrICogICBMaWtlIFJIX0tB QklfRVhDTFVERSwgdGhpcyBtYWNybyBleGNsdWRlcyB0aGUgZWxlbWVudCBmcm9tCisrICogICBj aGVja3N1bSBnZW5lcmF0aW9uLiAgVGhlIHNhbWUgd2FybmluZ3MgYXMgZm9yIFJIX0tBQklfRVhD TFVERQorKyAqICAgYXBwbHk6IHVzZSBSSF9LQUJJX0ZPUkNFX0NIQU5HRS4KKysgKgorKyAqICAg VGhpcyBtYWNybyBpcyBpbnRlbmRlZCB0byBiZSB1c2VkIGZvciBlbGVtZW50cyBlbWJlZGRlZCBp bnNpZGUKKysgKiAgIGtBQkktcHJvdGVjdGVkIHN0cnVjdHVyZXMgKHN0cnVjdCwgYXJyYXkpLiBJ biBjb250cmFzdCB3aXRoCisrICogICBSSF9LQUJJX0VYQ0xVREUsIHRoaXMgbWFjcm8gcmVzZXJ2 ZXMgZXh0cmEgc3BhY2UsIHNvIHRoYXQgdGhlCisrICogICBlbWJlZGRlZCBlbGVtZW50IGNhbiBn cm93IHdpdGhvdXQgY2hhbmdpbmcgdGhlIG9mZnNldHMgb2YgdGhlCisrICogICBmaWVsZHMgdGhh dCBmb2xsb3cuIFRoZSBwcm92aWRlZCAnc2l6ZScgaXMgdGhlIHRvdGFsIHNwYWNlIHRvIGJlCisr ICogICBhZGRlZCBpbiBsb25ncyAoaS5lLiBpdCdzIDggKiAnc2l6ZScgYnl0ZXMpLCBpbmNsdWRp bmcgdGhlIHNpemUKKysgKiAgIG9mIHRoZSBhZGRlZCBlbGVtZW50LiAgSXQgaXMgYXV0b21hdGlj YWxseSBjaGVja2VkIHRoYXQgdGhlIG5ldworKyAqICAgZWxlbWVudCBkb2VzIG5vdCBvdmVyZmxv dyB0aGUgcmVzZXJ2ZWQgc3BhY2UsIG5vdyBub3IgaW4gdGhlCisrICogICBmdXR1cmUuIFRoZSBz aXplIGlzIGFsc28gaW5jbHVkZWQgaW4gdGhlIGNoZWNrc3VtIHZpYSB0aGUKKysgKiAgIHJlc2Vy dmVkIHNwYWNlLCB0byBlbnN1cmUgdGhhdCB3ZSBkb24ndCBhY2NpZGVudGFsbHkgY2hhbmdlIGl0 LAorKyAqICAgd2hpY2ggd291bGQgY2hhbmdlIHRoZSBvZmZzZXRzIG9mIHRoZSBmaWVsZHMgdGhh dCBmb2xsb3cuCisrICoKKysgKiBSSF9LQUJJX0JST0tFTl9JTlNFUlQKKysgKiBSSF9LQUJJX0JS T0tFTl9SRU1PVkUKKysgKiAgIEluc2VydCBhIGZpZWxkIHRvIHRoZSBtaWRkbGUgb2YgYSBzdHJ1 Y3QgLyBkZWxldGUgYSBmaWVsZCBmcm9tIGEgc3RydWN0LgorKyAqICAgTm90ZSB0aGF0IHRoaXMg YnJlYWtzIGtBQkkhIEl0IGNhbiBiZSBkb25lIG9ubHkgd2hlbiBpdCdzIGNlcnRhaW4gdGhhdAor KyAqICAgbm8gM3JkIHBhcnR5IGRyaXZlciBjYW4gdmFsaWRseSByZWFjaCBpbnRvIHRoZSBzdHJ1 Y3QuICBBIHR5cGljYWwKKysgKiAgIGV4YW1wbGUgaXMgYSBzdHJ1Y3QgdGhhdCBpczogIGJvdGgg KGEpIHJlZmVyZW5jZWQgb25seSB0aHJvdWdoIGEgbG9uZworKyAqICAgY2hhaW4gb2YgcG9pbnRl cnMgZnJvbSBhbm90aGVyIHN0cnVjdCB0aGF0IGlzIHBhcnQgb2YgYSB3aGl0ZWxpc3RlZAorKyAq ICAgc3ltYm9sIGFuZCAoYikga2VybmVsIGludGVybmFsIG9ubHksIGl0IHNob3VsZCBoYXZlIG5l dmVyIGJlZW4gdmlzaWJsZQorKyAqICAgdG8gZ2Vua3N5bXMgaW4gdGhlIGZpcnN0IHBsYWNlLgor KyAqCisrICogICBBbm90aGVyIGV4YW1wbGUgYXJlIHN0cnVjdHMgdGhhdCBhcmUgZXhwbGljaXRs eSBleGVtcHQgZnJvbSBrQUJJCisrICogICBndWFyYW50ZWUgYnV0IHdlIGRpZCBub3QgaGF2ZSBl bm91Z2ggZm9yZXNpZ2h0IHRvIHVzZSBSSF9LQUJJX0VYQ0xVREUuCisrICogICBJbiB0aGlzIGNh c2UsIHRoZSB3YXJuaW5nIGZvciBSSF9LQUJJX0VYQ0xVREUgYXBwbGllcy4KKysgKgorKyAqICAg QSBkZXRhaWxlZCBleHBsYW5hdGlvbiBvZiBjb3JyZWN0bmVzcyBvZiBldmVyeSBSSF9LQUJJX0JS T0tFTl8qIG1hY3JvCisrICogICB1c2UgaXMgZXNwZWNpYWxseSBpbXBvcnRhbnQuCisrICoKKysg KiBSSF9LQUJJX0JST0tFTl9JTlNFUlRfQkxPQ0sKKysgKiBSSF9LQUJJX0JST0tFTl9SRU1PVkVf QkxPQ0sKKysgKiAgIEEgdmVyc2lvbiBvZiBSSF9LQUJJX0JST0tFTl9JTlNFUlQgLyBSRU1PVkUg dGhhdCBhbGxvd3MgbXVsdGlwbGUgZmllbGRzCisrICogICB0byBiZSBpbnNlcnRlZCBvciByZW1v dmVkIHRvZ2V0aGVyLiAgQWxsIGZpZWxkcyBuZWVkIHRvIGJlIHRlcm1pbmF0ZWQKKysgKiAgIGJ5 ICc7JyBpbnNpZGUoISkgdGhlIG1hY3JvIHBhcmFtZXRlci4gIFRoZSBtYWNybyBpdHNlbGYgbXVz dCBub3QgYmUKKysgKiAgIHRlcm1pbmF0ZWQgYnkgJzsnLgorKyAqCisrICogUkhfS0FCSV9CUk9L RU5fUkVQTEFDRQorKyAqICAgUmVwbGFjZSBhIGZpZWxkIGJ5IGEgZGlmZmVyZW50IG9uZSB3aXRo b3V0IGRvaW5nIGFueSBjaGVja2luZy4gIFRoaXMKKysgKiAgIGFsbG93cyByZXBsYWNpbmcgYSBm aWVsZCBieSBhbm90aGVyIHdpdGggYSBkaWZmZXJlbnQgc2l6ZS4gIFNpbWlsYXJseQorKyAqICAg dG8gb3RoZXIgUkhfS0FCSV9CUk9LRU4gbWFjcm9zLCB1c2Ugb2YgdGhpcyBpbmRpY2F0ZXMgYSBr QUJJIGJyZWFrYWdlLgorKyAqCisrICogUkhfS0FCSV9CUk9LRU5fSU5TRVJUX0VOVU0KKysgKiBS SF9LQUJJX0JST0tFTl9SRU1PVkVfRU5VTQorKyAqICAgSW5zZXJ0IGEgZmllbGQgdG8gdGhlIG1p ZGRsZSBvZiBhbiBlbnVtYXJhdGlvbiB0eXBlIC8gZGVsZXRlIGEgZmllbGQgZnJvbQorKyAqICAg YW4gZW51bWFyYXRpb24gdHlwZS4gTm90ZSB0aGF0IHRoaXMgY2FuIGJyZWFrIGtBQkkgZXNwZWNp YWxseSBpZiB0aGUKKysgKiAgIG51bWJlciBvZiBlbnVtIGZpZWxkcyBpcyB1c2VkIGluIGFuIGFy cmF5IHdpdGhpbiBhIHN0cnVjdHVyZS4gSXQgY2FuIGJlCisrICogICBkb25lIG9ubHkgd2hlbiBp dCBpcyBjZXJ0YWluIHRoYXQgbm8gM3JkIHBhcnR5IGRyaXZlciB3aWxsIHVzZSB0aGUKKysgKiAg IGVudW1lcmF0aW9uIHR5cGUgb3IgYSBzdHJ1Y3R1cmUgdGhhdCBlbWJlZHMgYW4gYXJyYXkgd2l0 aCBzaXplIGRldGVybWluZWQKKysgKiAgIGJ5IGFuIGVudW1lcmF0aW9uIHR5cGUuCisrICoKKysg KiBSSF9LQUJJX0VYVEVORF9FTlVNCisrICogICBBZGRzIGEgbmV3IGZpZWxkIHRvIGFuIGVudW1l cmF0aW9uIHR5cGUuICBUaGlzIG11c3QgYWx3YXlzIGJlIGFkZGVkIHRvCisrICogICB0aGUgZW5k IG9mIHRoZSBlbnVtLiAgQmVmb3JlIHVzaW5nIHRoaXMgbWFjcm8sIG1ha2Ugc3VyZSB0aGlzIGlz IGFjdHVhbGx5CisrICogICBzYWZlIHRvIGRvLgorKyAqLworKworKyN1bmRlZiBsaW51eAorKyNk ZWZpbmUgbGludXggbGludXgKKysKKysjaWZkZWYgX19HRU5LU1lNU19fCisrCisrIyBkZWZpbmUg UkhfS0FCSV9DT05TVAorKyMgZGVmaW5lIFJIX0tBQklfQUREX01PRElGSUVSKF9uZXcpCisrIyBk ZWZpbmUgUkhfS0FCSV9FWFRFTkQoX25ldykKKysjIGRlZmluZSBSSF9LQUJJX0ZJTExfSE9MRShf bmV3KQorKyMgZGVmaW5lIFJIX0tBQklfRk9SQ0VfQ0hBTkdFKHZlcikJCV9fYXR0cmlidXRlX18o KHJoX2thYmlfY2hhbmdlICMjIHZlcikpCisrIyBkZWZpbmUgUkhfS0FCSV9SRU5BTUUoX29yaWcs IF9uZXcpCQlfb3JpZworKyMgZGVmaW5lIFJIX0tBQklfSElERV9JTkNMVURFKF9maWxlKQkJPGxp bnV4L3JoX2thYmkuaD4KKysjIGRlZmluZSBSSF9LQUJJX0ZBS0VfSU5DTFVERShfZmlsZSkJCV9m aWxlCisrIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fSU5TRVJUKF9uZXcpCisrIyBkZWZpbmUgUkhf S0FCSV9CUk9LRU5fUkVNT1ZFKF9vcmlnKQkJX29yaWc7CisrIyBkZWZpbmUgUkhfS0FCSV9CUk9L RU5fSU5TRVJUX0JMT0NLKF9uZXcpCisrIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fUkVNT1ZFX0JM T0NLKF9vcmlnKQlfb3JpZworKyMgZGVmaW5lIFJIX0tBQklfQlJPS0VOX1JFUExBQ0UoX29yaWcs IF9uZXcpCV9vcmlnOworKyMgZGVmaW5lIFJIX0tBQklfQlJPS0VOX0lOU0VSVF9FTlVNKF9uZXcp CisrIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fUkVNT1ZFX0VOVU0oX29yaWcpCV9vcmlnLAorKyMg ZGVmaW5lIFJIX0tBQklfRVhURU5EX0VOVU0oX25ldykKKysKKysjIGRlZmluZSBfUkhfS0FCSV9E RVBSRUNBVEUoX3R5cGUsIF9vcmlnKQlfdHlwZSBfb3JpZworKyMgZGVmaW5lIF9SSF9LQUJJX0RF UFJFQ0FURV9GTihfdHlwZSwgX29yaWcsIF9hcmdzLi4uKQlfdHlwZSAoKl9vcmlnKShfYXJncykK KysjIGRlZmluZSBfUkhfS0FCSV9SRVBMQUNFKF9vcmlnLCBfbmV3KQkJX29yaWcKKysjIGRlZmlu ZSBfUkhfS0FCSV9FWENMVURFKF9lbGVtKQorKworKyMgZGVmaW5lIF9fUkhfS0FCSV9DSEVDS19T SVpFKF9pdGVtLCBfc2l6ZSkKKysKKysjZWxzZQorKworKyMgZGVmaW5lIFJIX0tBQklfQUxJR05f V0FSTklORyAiLiAgRGlzYWJsZSBDT05GSUdfUkhfS0FCSV9TSVpFX0FMSUdOX0NIRUNLUyBpZiBk ZWJ1Z2dpbmcuIgorKworKyMgZGVmaW5lIFJIX0tBQklfQ09OU1QJCQkJY29uc3QKKysjIGRlZmlu ZSBSSF9LQUJJX0FERF9NT0RJRklFUihfbmV3KQkJX25ldworKyMgZGVmaW5lIFJIX0tBQklfRVhU RU5EKF9uZXcpCQkJX25ldzsKKysjIGRlZmluZSBSSF9LQUJJX0ZJTExfSE9MRShfbmV3KQkJX25l dzsKKysjIGRlZmluZSBSSF9LQUJJX0ZPUkNFX0NIQU5HRSh2ZXIpCisrIyBkZWZpbmUgUkhfS0FC SV9SRU5BTUUoX29yaWcsIF9uZXcpCQlfbmV3CisrIyBkZWZpbmUgUkhfS0FCSV9ISURFX0lOQ0xV REUoX2ZpbGUpCQlfZmlsZQorKyMgZGVmaW5lIFJIX0tBQklfRkFLRV9JTkNMVURFKF9maWxlKQkJ PGxpbnV4L3JoX2thYmkuaD4KKysjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9JTlNFUlQoX25ldykJ CV9uZXc7CisrIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fUkVNT1ZFKF9vcmlnKQorKyMgZGVmaW5l IFJIX0tBQklfQlJPS0VOX0lOU0VSVF9CTE9DSyhfbmV3KQlfbmV3CisrIyBkZWZpbmUgUkhfS0FC SV9CUk9LRU5fUkVNT1ZFX0JMT0NLKF9vcmlnKQorKyMgZGVmaW5lIFJIX0tBQklfQlJPS0VOX1JF UExBQ0UoX29yaWcsIF9uZXcpCV9uZXc7CisrIyBkZWZpbmUgUkhfS0FCSV9CUk9LRU5fSU5TRVJU X0VOVU0oX25ldykJX25ldywKKysjIGRlZmluZSBSSF9LQUJJX0JST0tFTl9SRU1PVkVfRU5VTShf b3JpZykKKysjIGRlZmluZSBSSF9LQUJJX0VYVEVORF9FTlVNKF9uZXcpCQlfbmV3LAorKworKyNp ZiBJU19CVUlMVElOKENPTkZJR19SSF9LQUJJX1NJWkVfQUxJR05fQ0hFQ0tTKQorKyMgZGVmaW5l IF9fUkhfS0FCSV9DSEVDS19TSVpFX0FMSUdOKF9vcmlnLCBfbmV3KQkJCVwKKysJdW5pb24gewkJ CQkJCQkJXAorKwkJX1N0YXRpY19hc3NlcnQoc2l6ZW9mKHN0cnVjdHtfbmV3O30pIDw9IHNpemVv ZihzdHJ1Y3R7X29yaWc7fSksIFwKKysJCQkgICAgICAgX19GSUxFX18gIjoiIF9fc3RyaW5naWZ5 KF9fTElORV9fKSAiOiAiICBfX3N0cmluZ2lmeShfbmV3KSAiIGlzIGxhcmdlciB0aGFuICIgX19z dHJpbmdpZnkoX29yaWcpIFJIX0tBQklfQUxJR05fV0FSTklORyk7IFwKKysJCV9TdGF0aWNfYXNz ZXJ0KF9fYWxpZ25vZl9fKHN0cnVjdHtfbmV3O30pIDw9IF9fYWxpZ25vZl9fKHN0cnVjdHtfb3Jp Zzt9KSwgXAorKwkJCSAgICAgICBfX0ZJTEVfXyAiOiIgX19zdHJpbmdpZnkoX19MSU5FX18pICI6 ICIgIF9fc3RyaW5naWZ5KF9vcmlnKSAiIGlzIG5vdCBhbGlnbmVkIHRoZSBzYW1lIGFzICIgX19z dHJpbmdpZnkoX25ldykgUkhfS0FCSV9BTElHTl9XQVJOSU5HKTsgXAorKwl9CisrIyBkZWZpbmUg X19SSF9LQUJJX0NIRUNLX1NJWkUoX2l0ZW0sIF9zaXplKQkJCQlcCisrCV9TdGF0aWNfYXNzZXJ0 KHNpemVvZihzdHJ1Y3R7X2l0ZW07fSkgPD0gX3NpemUsCQkJXAorKwkJICAgICAgIF9fRklMRV9f ICI6IiBfX3N0cmluZ2lmeShfX0xJTkVfXykgIjogIiBfX3N0cmluZ2lmeShfaXRlbSkgIiBpcyBs YXJnZXIgdGhhbiB0aGUgcmVzZXJ2ZWQgc2l6ZSAoIiBfX3N0cmluZ2lmeShfc2l6ZSkgIiBieXRl cykiIFJIX0tBQklfQUxJR05fV0FSTklORyk7CisrI2Vsc2UKKysjIGRlZmluZSBfX1JIX0tBQklf Q0hFQ0tfU0laRV9BTElHTihfb3JpZywgX25ldykKKysjIGRlZmluZSBfX1JIX0tBQklfQ0hFQ0tf U0laRShfaXRlbSwgX3NpemUpCisrI2VuZGlmCisrCisrI2RlZmluZSBSSF9LQUJJX1VOSVFVRV9J RAlfX1BBU1RFKHJoX2thYmlfaGlkZGVuXywgX19MSU5FX18pCisrCisrIyBkZWZpbmUgX1JIX0tB QklfREVQUkVDQVRFKF90eXBlLCBfb3JpZykJX3R5cGUgcmhfcmVzZXJ2ZWRfIyNfb3JpZworKyMg ZGVmaW5lIF9SSF9LQUJJX0RFUFJFQ0FURV9GTihfdHlwZSwgX29yaWcsIF9hcmdzLi4uKSAgXAor KwlfdHlwZSAoKiByaF9yZXNlcnZlZF8jI19vcmlnKShfYXJncykKKysjIGRlZmluZSBfUkhfS0FC SV9SRVBMQUNFKF9vcmlnLCBfbmV3KQkJCSAgXAorKwl1bmlvbiB7CQkJCQkJICBcCisrCQlfbmV3 OwkJCQkJICBcCisrCQlzdHJ1Y3QgewkJCQkgIFwKKysJCQlfb3JpZzsJCQkJICBcCisrCQl9IFJI X0tBQklfVU5JUVVFX0lEOwkJCSAgXAorKwkJX19SSF9LQUJJX0NIRUNLX1NJWkVfQUxJR04oX29y aWcsIF9uZXcpOyAgXAorKwl9CisrCisrIyBkZWZpbmUgX1JIX0tBQklfRVhDTFVERShfZWxlbSkJ CV9lbGVtCisrCisrI2VuZGlmIC8qIF9fR0VOS1NZTVNfXyAqLworKworKyMgZGVmaW5lIFJIX0tB QklfREVQUkVDQVRFKF90eXBlLCBfb3JpZykJX1JIX0tBQklfREVQUkVDQVRFKF90eXBlLCBfb3Jp Zyk7CisrIyBkZWZpbmUgUkhfS0FCSV9ERVBSRUNBVEVfRk4oX3R5cGUsIF9vcmlnLCBfYXJncy4u LikgIFwKKysJX1JIX0tBQklfREVQUkVDQVRFX0ZOKF90eXBlLCBfb3JpZywgX2FyZ3MpOworKyMg ZGVmaW5lIFJIX0tBQklfUkVQTEFDRShfb3JpZywgX25ldykJCV9SSF9LQUJJX1JFUExBQ0UoX29y aWcsIF9uZXcpOworKworKyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTEoX25ldykJCV9uZXc7Cisr I2RlZmluZSBfUkhfS0FCSV9SRVBMQUNFMihfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExB Q0UxKF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTMoX25ldywgLi4uKQlf bmV3OyBfUkhfS0FCSV9SRVBMQUNFMihfX1ZBX0FSR1NfXykKKysjZGVmaW5lIF9SSF9LQUJJX1JF UExBQ0U0KF9uZXcsIC4uLikJX25ldzsgX1JIX0tBQklfUkVQTEFDRTMoX19WQV9BUkdTX18pCisr I2RlZmluZSBfUkhfS0FCSV9SRVBMQUNFNShfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExB Q0U0KF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTYoX25ldywgLi4uKQlf bmV3OyBfUkhfS0FCSV9SRVBMQUNFNShfX1ZBX0FSR1NfXykKKysjZGVmaW5lIF9SSF9LQUJJX1JF UExBQ0U3KF9uZXcsIC4uLikJX25ldzsgX1JIX0tBQklfUkVQTEFDRTYoX19WQV9BUkdTX18pCisr I2RlZmluZSBfUkhfS0FCSV9SRVBMQUNFOChfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExB Q0U3KF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTkoX25ldywgLi4uKQlf bmV3OyBfUkhfS0FCSV9SRVBMQUNFOChfX1ZBX0FSR1NfXykKKysjZGVmaW5lIF9SSF9LQUJJX1JF UExBQ0UxMChfbmV3LCAuLi4pCV9uZXc7IF9SSF9LQUJJX1JFUExBQ0U5KF9fVkFfQVJHU19fKQor KyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTExKF9uZXcsIC4uLikJX25ldzsgX1JIX0tBQklfUkVQ TEFDRTEwKF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfUkVQTEFDRTEyKF9uZXcsIC4u LikJX25ldzsgX1JIX0tBQklfUkVQTEFDRTExKF9fVkFfQVJHU19fKQorKworKyNkZWZpbmUgUkhf S0FCSV9SRVBMQUNFX1NQTElUKF9vcmlnLCAuLi4pCV9SSF9LQUJJX1JFUExBQ0UoX29yaWcsIFwK KysJCXN0cnVjdCB7IF9fUEFTVEUoX1JIX0tBQklfUkVQTEFDRSwgQ09VTlRfQVJHUyhfX1ZBX0FS R1NfXykpKF9fVkFfQVJHU19fKSB9KTsKKysKKysjIGRlZmluZSBSSF9LQUJJX1JFU0VSVkUobikJ CV9SSF9LQUJJX1JFU0VSVkUobik7CisrCisrI2RlZmluZSBfUkhfS0FCSV9VU0UxKG4sIF9uZXcp CV9SSF9LQUJJX1JFU0VSVkUobiksIF9uZXcKKysjZGVmaW5lIF9SSF9LQUJJX1VTRTIobiwgLi4u KQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9VU0UxKF9fVkFfQVJHU19fKQorKyNkZWZp bmUgX1JIX0tBQklfVVNFMyhuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7IF9SSF9LQUJJX1VT RTIoX19WQV9BUkdTX18pCisrI2RlZmluZSBfUkhfS0FCSV9VU0U0KG4sIC4uLikJX1JIX0tBQklf UkVTRVJWRShuKTsgX1JIX0tBQklfVVNFMyhfX1ZBX0FSR1NfXykKKysjZGVmaW5lIF9SSF9LQUJJ X1VTRTUobiwgLi4uKQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9VU0U0KF9fVkFfQVJH U19fKQorKyNkZWZpbmUgX1JIX0tBQklfVVNFNihuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7 IF9SSF9LQUJJX1VTRTUoX19WQV9BUkdTX18pCisrI2RlZmluZSBfUkhfS0FCSV9VU0U3KG4sIC4u LikJX1JIX0tBQklfUkVTRVJWRShuKTsgX1JIX0tBQklfVVNFNihfX1ZBX0FSR1NfXykKKysjZGVm aW5lIF9SSF9LQUJJX1VTRTgobiwgLi4uKQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9V U0U3KF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfVVNFOShuLCAuLi4pCV9SSF9LQUJJ X1JFU0VSVkUobik7IF9SSF9LQUJJX1VTRTgoX19WQV9BUkdTX18pCisrI2RlZmluZSBfUkhfS0FC SV9VU0UxMChuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUobik7IF9SSF9LQUJJX1VTRTkoX19WQV9B UkdTX18pCisrI2RlZmluZSBfUkhfS0FCSV9VU0UxMShuLCAuLi4pCV9SSF9LQUJJX1JFU0VSVkUo bik7IF9SSF9LQUJJX1VTRTEwKF9fVkFfQVJHU19fKQorKyNkZWZpbmUgX1JIX0tBQklfVVNFMTIo biwgLi4uKQlfUkhfS0FCSV9SRVNFUlZFKG4pOyBfUkhfS0FCSV9VU0UxMShfX1ZBX0FSR1NfXykK KysKKysjZGVmaW5lIF9SSF9LQUJJX1VTRSguLi4pCV9SSF9LQUJJX1JFUExBQ0UoX19WQV9BUkdT X18pCisrI2RlZmluZSBSSF9LQUJJX1VTRShuLCAuLi4pCV9SSF9LQUJJX1VTRShfX1BBU1RFKF9S SF9LQUJJX1VTRSwgQ09VTlRfQVJHUyhfX1ZBX0FSR1NfXykpKG4sIF9fVkFfQVJHU19fKSk7Cisr CisrIyBkZWZpbmUgUkhfS0FCSV9VU0VfU1BMSVQobiwgLi4uKQlSSF9LQUJJX1JFUExBQ0VfU1BM SVQoX1JIX0tBQklfUkVTRVJWRShuKSwgX19WQV9BUkdTX18pCisrCisrIyBkZWZpbmUgX1JIX0tB QklfUkVTRVJWRShuKQkJdW5zaWduZWQgbG9uZyByaF9yZXNlcnZlZCMjbgorKworKyNkZWZpbmUg UkhfS0FCSV9FWENMVURFKF9lbGVtKQkJX1JIX0tBQklfRVhDTFVERShfZWxlbSk7CisrCisrI2Rl ZmluZSBSSF9LQUJJX0VYQ0xVREVfV0lUSF9TSVpFKF9uZXcsIF9zaXplKQkJCQlcCisrCXVuaW9u IHsJCQkJCQkJCVwKKysJCVJIX0tBQklfRVhDTFVERShfbmV3KQkJCQkJXAorKwkJdW5zaWduZWQg bG9uZyBSSF9LQUJJX1VOSVFVRV9JRFtfc2l6ZV07CQkJXAorKwkJX19SSF9LQUJJX0NIRUNLX1NJ WkUoX25ldywgOCAqIChfc2l6ZSkpCQkJXAorKwl9OworKworKyNkZWZpbmUgUkhfS0FCSV9FWFRF TkRfV0lUSF9TSVpFKF9uZXcsIF9zaXplKQkJCQlcCisrCVJIX0tBQklfRVhURU5EKHVuaW9uIHsJ CQkJCQlcCisrCQlfbmV3OwkJCQkJCQlcCisrCQl1bnNpZ25lZCBsb25nIFJIX0tBQklfVU5JUVVF X0lEW19zaXplXTsJCQlcCisrCQlfX1JIX0tBQklfQ0hFQ0tfU0laRShfbmV3LCA4ICogKF9zaXpl KSkJCQlcCisrCX0pCisrCisrI2RlZmluZSBfUkhfS0FCSV9BVVhfUFRSKF9zdHJ1Y3QpCQkJCQlc CisrCXNpemVfdCBfc3RydWN0IyNfc2l6ZV9yaDsJCQkJCVwKKysJX1JIX0tBQklfRVhDTFVERShz dHJ1Y3QgX3N0cnVjdCMjX3JoICpfcmgpCisrI2RlZmluZSBSSF9LQUJJX0FVWF9QVFIoX3N0cnVj dCkJCQkJCVwKKysJX1JIX0tBQklfQVVYX1BUUihfc3RydWN0KTsKKysKKysjZGVmaW5lIF9SSF9L QUJJX0FVWF9FTUJFRChfc3RydWN0KQkJCQkJXAorKwlzaXplX3QgX3N0cnVjdCMjX3NpemVfcmg7 CQkJCQlcCisrCV9SSF9LQUJJX0VYQ0xVREUoc3RydWN0IF9zdHJ1Y3QjI19yaCBfcmgpCisrI2Rl ZmluZSBSSF9LQUJJX0FVWF9FTUJFRChfc3RydWN0KQkJCQkJXAorKwlfUkhfS0FCSV9BVVhfRU1C RUQoX3N0cnVjdCk7CisrCisrI2RlZmluZSBSSF9LQUJJX1VTRV9BVVhfUFRSKG4xLCBuMiwgX3N0 cnVjdCkJCQkJXAorKwlSSF9LQUJJX1VTRShuMSwgbjIsCQkJCQkJXAorKwkJICAgICBzdHJ1Y3Qg eyBSSF9LQUJJX0FVWF9QVFIoX3N0cnVjdCkgfSkKKysKKysjZGVmaW5lIFJIX0tBQklfQVVYX1NF VF9TSVpFKF9uYW1lLCBfc3RydWN0KSAoewkJCQlcCisrCShfbmFtZSktPl9zdHJ1Y3QjI19zaXpl X3JoID0gc2l6ZW9mKHN0cnVjdCBfc3RydWN0IyNfcmgpOwlcCisrfSkKKysKKysjZGVmaW5lIFJI X0tBQklfQVVYX0lOSVRfU0laRShfc3RydWN0KQkJCQkJXAorKwkuX3N0cnVjdCMjX3NpemVfcmgg PSBzaXplb2Yoc3RydWN0IF9zdHJ1Y3QjI19yaCksCisrCisrI2RlZmluZSBSSF9LQUJJX0FVWChf cHRyLCBfc3RydWN0LCBfZmllbGQpICh7CQkJCVwKKysJc2l6ZV90IF9fb2ZmID0gb2Zmc2V0b2Yo c3RydWN0IF9zdHJ1Y3QjI19yaCwgX2ZpZWxkKTsJCVwKKysJKF9wdHIpLT5fc3RydWN0IyNfc2l6 ZV9yaCA+IF9fb2ZmID8gdHJ1ZSA6IGZhbHNlOwkJXAorK30pCisrCisrI2VuZGlmIC8qIF9MSU5V WF9SSF9LQUJJX0ggKi8KK2RpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3JoX3dhaXZlZC5oIGIv aW5jbHVkZS9saW51eC9yaF93YWl2ZWQuaAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAw MDAwMDAwMDAwMC4uZDYyYTllODk2YjVlCistLS0gL2Rldi9udWxsCisrKysgYi9pbmNsdWRlL2xp bnV4L3JoX3dhaXZlZC5oCitAQCAtMCwwICsxLDE5IEBACisrLyogU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEdQTC0yLjAgKi8KKysvKgorKyAqIGluY2x1ZGUvbGludXgvcmhfd2FpdmVkLmgKKysg KgorKyAqIHJoX3dhaXZlZCBjbWRsaW5lIHBhcmFtZXRlciBpbnRlcmZhY2UuCisrICoKKysgKiBD b3B5cmlnaHQgKEMpIDIwMjQsIFJlZCBIYXQsIEluYy4gIFJpY2FyZG8gUm9iYWluYSA8cnJvYmFp bmFAcmVkaGF0LmNvbT4KKysgKi8KKysjaWZuZGVmIF9SSF9XQUlWRURfSAorKyNkZWZpbmUgX1JI X1dBSVZFRF9ICisrCisrZW51bSByaF93YWl2ZWRfaXRlbXMgeworKwkvKiBSSF9XQUlWRURfSVRF TVMgbXVzdCBhbHdheXMgYmUgdGhlIGxhc3QgaXRlbSBpbiB0aGUgZW51bSAqLworKwlSSF9XQUlW RURfSVRFTVMsCisrfTsKKysKKytib29sIGlzX3JoX3dhaXZlZChlbnVtIHJoX3dhaXZlZF9pdGVt cyBmZWF0KTsKKysKKysjZW5kaWYgLyogX1JIX1dBSVZFRF9IICovCitkaWZmIC0tZ2l0IGEvaW5j bHVkZS9saW51eC9zZWN1cml0eS5oIGIvaW5jbHVkZS9saW51eC9zZWN1cml0eS5oCitpbmRleCAx NTNlOTA0MzA1OGYuLjJlZTNhODk5MDk2OCAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvbGludXgvc2Vj dXJpdHkuaAorKysrIGIvaW5jbHVkZS9saW51eC9zZWN1cml0eS5oCitAQCAtMjQzOSw0ICsyNDM5 LDEzIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBzZWN1cml0eV9pbml0cmFtZnNfcG9wdWxhdGVkKHZv aWQpCisgfQorICNlbmRpZiAvKiBDT05GSUdfU0VDVVJJVFkgKi8KKyAKKysjaWZkZWYgQ09ORklH X1NFQ1VSSVRZX0xPQ0tET1dOX0xTTQorK2V4dGVybiBpbnQgc2VjdXJpdHlfbG9ja19rZXJuZWxf ZG93bihjb25zdCBjaGFyICp3aGVyZSwgZW51bSBsb2NrZG93bl9yZWFzb24gbGV2ZWwpOworKyNl bHNlCisrc3RhdGljIGlubGluZSBpbnQgc2VjdXJpdHlfbG9ja19rZXJuZWxfZG93bihjb25zdCBj aGFyICp3aGVyZSwgZW51bSBsb2NrZG93bl9yZWFzb24gbGV2ZWwpCisreworKwlyZXR1cm4gMDsK Kyt9CisrI2VuZGlmIC8qIENPTkZJR19TRUNVUklUWV9MT0NLRE9XTl9MU00gKi8KKysKKyAjZW5k aWYgLyogISBfX0xJTlVYX1NFQ1VSSVRZX0ggKi8KK2RpZmYgLS1naXQgYS9pbml0L21haW4uYyBi L2luaXQvbWFpbi5jCitpbmRleCA5MmQzNGU0OTZhMzMuLjA1ZDc5OWY5MjM4MyAxMDA2NDQKKy0t LSBhL2luaXQvbWFpbi5jCisrKysgYi9pbml0L21haW4uYworQEAgLTEyNDIsOCArMTI0MiwxMCBA QCBzdGF0aWMgYm9vbCBfX2luaXRfb3JfbW9kdWxlIGluaXRjYWxsX2JsYWNrbGlzdGVkKGluaXRj YWxsX3QgZm4pCisgCWNoYXIgZm5fbmFtZVtLU1lNX1NZTUJPTF9MRU5dOworIAl1bnNpZ25lZCBs b25nIGFkZHI7CisgCisrI2lmbmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUworIAlpZiAobGlz dF9lbXB0eSgmYmxhY2tsaXN0ZWRfaW5pdGNhbGxzKSkKKyAJCXJldHVybiBmYWxzZTsKKysjZW5k aWYKKyAKKyAJYWRkciA9ICh1bnNpZ25lZCBsb25nKSBkZXJlZmVyZW5jZV9mdW5jdGlvbl9kZXNj cmlwdG9yKGZuKTsKKyAJc3ByaW50X3N5bWJvbF9ub19vZmZzZXQoZm5fbmFtZSwgYWRkcik7CitA QCAtMTI1NCw2ICsxMjU2LDkgQEAgc3RhdGljIGJvb2wgX19pbml0X29yX21vZHVsZSBpbml0Y2Fs bF9ibGFja2xpc3RlZChpbml0Y2FsbF90IGZuKQorIAkgKi8KKyAJc3RycmVwbGFjZShmbl9uYW1l LCAnICcsICdcMCcpOworIAorKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUworKwlpbml0 X3JoX2NoZWNrX3N0YXR1cyhmbl9uYW1lKTsKKysjZW5kaWYKKyAJbGlzdF9mb3JfZWFjaF9lbnRy eShlbnRyeSwgJmJsYWNrbGlzdGVkX2luaXRjYWxscywgbmV4dCkgeworIAkJaWYgKCFzdHJjbXAo Zm5fbmFtZSwgZW50cnktPmJ1ZikpIHsKKyAJCQlwcl9kZWJ1ZygiaW5pdGNhbGwgJXMgYmxhY2ts aXN0ZWRcbiIsIGZuX25hbWUpOworZGlmZiAtLWdpdCBhL2tlcm5lbC9NYWtlZmlsZSBiL2tlcm5l bC9NYWtlZmlsZQoraW5kZXggMWUxYTMxNjczNTc3Li42MGFmNGY2YzIzMTYgMTAwNjQ0CistLS0g YS9rZXJuZWwvTWFrZWZpbGUKKysrKyBiL2tlcm5lbC9NYWtlZmlsZQorQEAgLTEyLDYgKzEyLDgg QEAgb2JqLXkgICAgID0gZm9yay5vIGV4ZWNfZG9tYWluLm8gZXhlY19zdGF0ZS5vIHBhbmljLm8g XAorIAkgICAgbm90aWZpZXIubyBrc3lzZnMubyBjcmVkLm8gcmVib290Lm8gXAorIAkgICAgYXN5 bmMubyByYW5nZS5vIHNtcGJvb3QubyB1Y291bnQubyByZWdzZXQubyBrc3ltc19jb21tb24ubwor IAorK29iai0kKENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTKSArPSByaF9tZXNzYWdlcy5vIHJoX2Zs YWdzLm8gcmhfd2FpdmVkLm8KKytvYmotJChDT05GSUdfVVNFUk1PREVfRFJJVkVSKSArPSB1c2Vy bW9kZV9kcml2ZXIubworIG9iai0kKENPTkZJR19NVUxUSVVTRVIpICs9IGdyb3Vwcy5vCisgb2Jq LSQoQ09ORklHX1ZIT1NUX1RBU0spICs9IHZob3N0X3Rhc2subworIAorZGlmZiAtLWdpdCBhL2tl cm5lbC9icGYvY29yZS5jIGIva2VybmVsL2JwZi9jb3JlLmMKK2luZGV4IDZlMTlhMDMwZGE2Zi4u ODQwMzM4YzUxZTZjIDEwMDY0NAorLS0tIGEva2VybmVsL2JwZi9jb3JlLmMKKysrKyBiL2tlcm5l bC9icGYvY29yZS5jCitAQCAtNTQ3LDcgKzU0NywxMiBAQCB2b2lkIGJwZl9wcm9nX2thbGxzeW1z X2RlbF9hbGwoc3RydWN0IGJwZl9wcm9nICpmcCkKKyAvKiBBbGwgQlBGIEpJVCBzeXNjdGwga25v YnMgaGVyZS4gKi8KKyBpbnQgYnBmX2ppdF9lbmFibGUgICBfX3JlYWRfbW9zdGx5ID0gSVNfQlVJ TFRJTihDT05GSUdfQlBGX0pJVF9ERUZBVUxUX09OKTsKKyBpbnQgYnBmX2ppdF9rYWxsc3ltcyBf X3JlYWRfbW9zdGx5ID0gSVNfQlVJTFRJTihDT05GSUdfQlBGX0pJVF9ERUZBVUxUX09OKTsKKysj aWZkZWYgQ09ORklHX1JIRUxfRElGRkVSRU5DRVMKKysvKiBSSEVMLW9ubHk6IHNldCBpdCB0byAx IGJ5IGRlZmF1bHQgKi8KKytpbnQgYnBmX2ppdF9oYXJkZW4gICBfX3JlYWRfbW9zdGx5ID0gMTsK KysjZWxzZQorIGludCBicGZfaml0X2hhcmRlbiAgIF9fcmVhZF9tb3N0bHk7CisrI2VuZGlmIC8q IENPTkZJR19SSEVMX0RJRkZFUkVOQ0VTICovCisgbG9uZyBicGZfaml0X2xpbWl0ICAgX19yZWFk X21vc3RseTsKKyBsb25nIGJwZl9qaXRfbGltaXRfbWF4IF9fcmVhZF9tb3N0bHk7CisgCitkaWZm IC0tZ2l0IGEva2VybmVsL2JwZi9zeXNjYWxsLmMgYi9rZXJuZWwvYnBmL3N5c2NhbGwuYworaW5k ZXggNmRiMzA2ZDIzYjQ3Li5hNzU4ZmVlYmZlMDMgMTAwNjQ0CistLS0gYS9rZXJuZWwvYnBmL3N5 c2NhbGwuYworKysrIGIva2VybmVsL2JwZi9zeXNjYWxsLmMKK0BAIC0yOCw2ICsyOCw3IEBACisg I2luY2x1ZGUgPGxpbnV4L2N0eXBlLmg+CisgI2luY2x1ZGUgPGxpbnV4L25vc3BlYy5oPgorICNp bmNsdWRlIDxsaW51eC9hdWRpdC5oPgorKyNpbmNsdWRlIDxsaW51eC9pbml0Lmg+CisgI2luY2x1 ZGUgPHVhcGkvbGludXgvYnRmLmg+CisgI2luY2x1ZGUgPGxpbnV4L3BndGFibGUuaD4KKyAjaW5j bHVkZSA8bGludXgvYnBmX2xzbS5oPgorQEAgLTY2LDYgKzY3LDIzIEBAIHN0YXRpYyBERUZJTkVf U1BJTkxPQ0sobWFwX2lkcl9sb2NrKTsKKyBzdGF0aWMgREVGSU5FX0lEUihsaW5rX2lkcik7Cisg c3RhdGljIERFRklORV9TUElOTE9DSyhsaW5rX2lkcl9sb2NrKTsKKyAKKytzdGF0aWMgaW50IF9f aW5pdCB1bnByaXZpbGVnZWRfYnBmX3NldHVwKGNoYXIgKnN0cikKKyt7CisrCXVuc2lnbmVkIGxv bmcgZGlzYWJsZWQ7CisrCWlmICgha3N0cnRvdWwoc3RyLCAwLCAmZGlzYWJsZWQpKQorKwkJc3lz Y3RsX3VucHJpdmlsZWdlZF9icGZfZGlzYWJsZWQgPSAhIWRpc2FibGVkOworKworKwlpZiAoIXN5 c2N0bF91bnByaXZpbGVnZWRfYnBmX2Rpc2FibGVkKSB7CisrCQlwcl93YXJuKCJVbnByaXZpbGVn ZWQgQlBGIGhhcyBiZWVuIGVuYWJsZWQgIgorKwkJCSIodW5wcml2aWxlZ2VkX2JwZl9kaXNhYmxl ZD0wIGhhcyBiZWVuIHN1cHBsaWVkICIKKysJCQkiaW4gYm9vdCBwYXJhbWV0ZXJzKSwgdGFpbnRp bmcgdGhlIGtlcm5lbCIpOworKwkJYWRkX3RhaW50KFRBSU5UX1VOUFJJVklMRUdFRF9CUEYsIExP Q0tERVBfU1RJTExfT0spOworKwl9CisrCisrCXJldHVybiAxOworK30KKytfX3NldHVwKCJ1bnBy aXZpbGVnZWRfYnBmX2Rpc2FibGVkPSIsIHVucHJpdmlsZWdlZF9icGZfc2V0dXApOworKworIGlu dCBzeXNjdGxfdW5wcml2aWxlZ2VkX2JwZl9kaXNhYmxlZCBfX3JlYWRfbW9zdGx5ID0KKyAJSVNf QlVJTFRJTihDT05GSUdfQlBGX1VOUFJJVl9ERUZBVUxUX09GRikgPyAyIDogMDsKKyAKK0BAIC02 NzU0LDYgKzY3NzIsMTEgQEAgc3RhdGljIGludCBicGZfdW5wcml2X2hhbmRsZXIoY29uc3Qgc3Ry dWN0IGN0bF90YWJsZSAqdGFibGUsIGludCB3cml0ZSwKKyAJaWYgKHdyaXRlICYmICFyZXQpIHsK KyAJCWlmIChsb2NrZWRfc3RhdGUgJiYgdW5wcml2X2VuYWJsZSAhPSAxKQorIAkJCXJldHVybiAt RVBFUk07CisrCQlpZiAoIXVucHJpdl9lbmFibGUpIHsKKysJCQlwcl93YXJuKCJVbnByaXZpbGVn ZWQgQlBGIGhhcyBiZWVuIGVuYWJsZWQsICIKKysJCQkJInRhaW50aW5nIHRoZSBrZXJuZWwiKTsK KysJCQlhZGRfdGFpbnQoVEFJTlRfVU5QUklWSUxFR0VEX0JQRiwgTE9DS0RFUF9TVElMTF9PSyk7 CisrCQl9CisgCQkqKGludCAqKXRhYmxlLT5kYXRhID0gdW5wcml2X2VuYWJsZTsKKyAJfQorIAor ZGlmZiAtLWdpdCBhL2tlcm5lbC9tb2R1bGUvbWFpbi5jIGIva2VybmVsL21vZHVsZS9tYWluLmMK K2luZGV4IDQ2ZGQ4ZDI1YTYwNS4uZTgyYjJiMTNmNTg4IDEwMDY0NAorLS0tIGEva2VybmVsL21v ZHVsZS9tYWluLmMKKysrKyBiL2tlcm5lbC9tb2R1bGUvbWFpbi5jCitAQCAtNjYsNiArNjYsOCBA QAorICNkZWZpbmUgQ1JFQVRFX1RSQUNFX1BPSU5UUworICNpbmNsdWRlIDx0cmFjZS9ldmVudHMv bW9kdWxlLmg+CisgCisrI2luY2x1ZGUgPGxpbnV4L3JoX2ZsYWdzLmg+CisrCisgLyoKKyAgKiBN dXRleCBwcm90ZWN0czoKKyAgKiAxKSBMaXN0IG9mIG1vZHVsZXMgKGFsc28gc2FmZWx5IHJlYWRh YmxlIHdpdGhpbiBSQ1UgcmVhZCBzZWN0aW9uKSwKK0BAIC02MDQsNiArNjA2LDcgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBtb2R1bGVfYXR0cmlidXRlIG1vZGluZm9fIyNmaWVsZCA9IHsgICAgICAg ICAgICAgIFwKKyAKKyBNT0RJTkZPX0FUVFIodmVyc2lvbik7CisgTU9ESU5GT19BVFRSKHNyY3Zl cnNpb24pOworK01PRElORk9fQVRUUihyaGVsdmVyc2lvbik7CisgCisgc3RhdGljIHZvaWQgc2V0 dXBfbW9kaW5mb19pbXBvcnRfbnMoc3RydWN0IG1vZHVsZSAqbW9kLCBjb25zdCBjaGFyICpzKQor IHsKK0BAIC0xMDg2LDYgKzEwODksNyBAQCBjb25zdCBzdHJ1Y3QgbW9kdWxlX2F0dHJpYnV0ZSAq Y29uc3QgbW9kaW5mb19hdHRyc1tdID0geworIAkmbW9kdWxlX3VldmVudCwKKyAJJm1vZGluZm9f dmVyc2lvbiwKKyAJJm1vZGluZm9fc3JjdmVyc2lvbiwKKysJJm1vZGluZm9fcmhlbHZlcnNpb24s CisgCSZtb2RpbmZvX2ltcG9ydF9ucywKKyAJJm1vZGluZm9faW5pdHN0YXRlLAorIAkmbW9kaW5m b19jb3Jlc2l6ZSwKK0BAIC0zMzk2LDYgKzM0MDAsMTEgQEAgc3RhdGljIGludCBlYXJseV9tb2Rf Y2hlY2soc3RydWN0IGxvYWRfaW5mbyAqaW5mbywgaW50IGZsYWdzKQorIAkJcmV0dXJuIC1FUEVS TTsKKyAJfQorIAorKyNpZmRlZiBDT05GSUdfUkhFTF9ESUZGRVJFTkNFUworKwlpZiAoZ2V0X21v ZGluZm8oaW5mbywgImludHJlZSIpKQorKwkJbW9kdWxlX3JoX2NoZWNrX3N0YXR1cyhpbmZvLT5u YW1lKTsKKysjZW5kaWYKKysKKyAJZXJyID0gcmV3cml0ZV9zZWN0aW9uX2hlYWRlcnMoaW5mbywg ZmxhZ3MpOworIAlpZiAoZXJyKQorIAkJcmV0dXJuIGVycjsKK0BAIC0zOTc0LDYgKzM5ODMsMTAg QEAgdm9pZCBwcmludF9tb2R1bGVzKHZvaWQpCisgCQlwcl9jb250KCIgW2xhc3QgdW5sb2FkZWQ6 ICVzJXNdIiwgbGFzdF91bmxvYWRlZF9tb2R1bGUubmFtZSwKKyAJCQlsYXN0X3VubG9hZGVkX21v ZHVsZS50YWludHMpOworIAlwcl9jb250KCJcbiIpOworKworKyNpZmRlZiBDT05GSUdfUkhFTF9E SUZGRVJFTkNFUworKwlyaF9wcmludF9mbGFncygpOworKyNlbmRpZgorIH0KKyAKKyAjaWZkZWYg Q09ORklHX01PRFVMRV9ERUJVR0ZTCitkaWZmIC0tZ2l0IGEva2VybmVsL21vZHVsZS9zaWduaW5n LmMgYi9rZXJuZWwvbW9kdWxlL3NpZ25pbmcuYworaW5kZXggNTkwYmEyOWM4NWFiLi4wMjE1M2Q4 NTc1MzEgMTAwNjQ0CistLS0gYS9rZXJuZWwvbW9kdWxlL3NpZ25pbmcuYworKysrIGIva2VybmVs L21vZHVsZS9zaWduaW5nLmMKK0BAIC02MSwxMCArNjEsMTcgQEAgaW50IG1vZF92ZXJpZnlfc2ln KGNvbnN0IHZvaWQgKm1vZCwgc3RydWN0IGxvYWRfaW5mbyAqaW5mbykKKyAJbW9kbGVuIC09IHNp Z19sZW4gKyBzaXplb2YobXMpOworIAlpbmZvLT5sZW4gPSBtb2RsZW47CisgCistCXJldHVybiB2 ZXJpZnlfcGtjczdfc2lnbmF0dXJlKG1vZCwgbW9kbGVuLCBtb2QgKyBtb2RsZW4sIHNpZ19sZW4s CisrCXJldCA9IHZlcmlmeV9wa2NzN19zaWduYXR1cmUobW9kLCBtb2RsZW4sIG1vZCArIG1vZGxl biwgc2lnX2xlbiwKKyAJCQkJICAgICAgVkVSSUZZX1VTRV9TRUNPTkRBUllfS0VZUklORywKKyAJ CQkJICAgICAgVkVSSUZZSU5HX01PRFVMRV9TSUdOQVRVUkUsCisgCQkJCSAgICAgIE5VTEwsIE5V TEwpOworKwlpZiAocmV0ID09IC1FTk9LRVkgJiYgSVNfRU5BQkxFRChDT05GSUdfSU5URUdSSVRZ X1BMQVRGT1JNX0tFWVJJTkcpKSB7CisrCQlyZXQgPSB2ZXJpZnlfcGtjczdfc2lnbmF0dXJlKG1v ZCwgbW9kbGVuLCBtb2QgKyBtb2RsZW4sIHNpZ19sZW4sCisrCQkJCVZFUklGWV9VU0VfUExBVEZP Uk1fS0VZUklORywKKysJCQkJVkVSSUZZSU5HX01PRFVMRV9TSUdOQVRVUkUsCisrCQkJCU5VTEws IE5VTEwpOworKwl9CisrCXJldHVybiByZXQ7CisgfQorIAorIGludCBtb2R1bGVfc2lnX2NoZWNr KHN0cnVjdCBsb2FkX2luZm8gKmluZm8sIGludCBmbGFncykKK2RpZmYgLS1naXQgYS9rZXJuZWwv cGFuaWMuYyBiL2tlcm5lbC9wYW5pYy5jCitpbmRleCAyMTM3MjViNjEyYWEuLmE4MjNkMDFmMWYw NSAxMDA2NDQKKy0tLSBhL2tlcm5lbC9wYW5pYy5jCisrKysgYi9rZXJuZWwvcGFuaWMuYworQEAg LTgyNiw2ICs4MjYsMTggQEAgY29uc3Qgc3RydWN0IHRhaW50X2ZsYWcgdGFpbnRfZmxhZ3NbVEFJ TlRfRkxBR1NfQ09VTlRdID0geworIAlUQUlOVF9GTEFHKFJBTkRTVFJVQ1QsCQkJJ1QnLCAnICcp LAorIAlUQUlOVF9GTEFHKFRFU1QsCQkJJ04nLCAnICcpLAorIAlUQUlOVF9GTEFHKEZXQ1RMLAkJ CSdKJywgJyAnKSwKKysJVEFJTlRfRkxBRygyMCwJCQkJJz8nLCAnLScpLAorKwlUQUlOVF9GTEFH KDIxLAkJCQknPycsICctJyksCisrCVRBSU5UX0ZMQUcoMjIsCQkJCSc/JywgJy0nKSwKKysJVEFJ TlRfRkxBRygyMywJCQkJJz8nLCAnLScpLAorKwlUQUlOVF9GTEFHKDI0LAkJCQknPycsICctJyks CisrCVRBSU5UX0ZMQUcoMjUsCQkJCSc/JywgJy0nKSwKKysJVEFJTlRfRkxBRyhQQVJUTkVSX1NV UFBPUlRFRCwJCSdwJywgJyAnKSwKKysJVEFJTlRfRkxBRyhTVVBQT1JUX1JFTU9WRUQsCQknaCcs ICcgJyksCisrCVRBSU5UX0ZMQUcoUkVTRVJWRUQyOCwJCQknPycsICctJyksCisrCVRBSU5UX0ZM QUcoUkVTRVJWRUQyOSwJCQknPycsICctJyksCisrCVRBSU5UX0ZMQUcoUkVTRVJWRUQzMCwJCQkn PycsICctJyksCisrCVRBSU5UX0ZMQUcoVU5QUklWSUxFR0VEX0JQRiwJCSd1JywgJyAnKSwKKyB9 OworIAorICN1bmRlZiBUQUlOVF9GTEFHCitkaWZmIC0tZ2l0IGEva2VybmVsL3JoX2ZsYWdzLmMg Yi9rZXJuZWwvcmhfZmxhZ3MuYworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw MDAwMC4uMTBkMjY5NThmODQwCistLS0gL2Rldi9udWxsCisrKysgYi9rZXJuZWwvcmhfZmxhZ3Mu YworQEAgLTAsMCArMSwxMTUgQEAKKysjaW5jbHVkZSA8bGludXgva2VybmVsLmg+CisrI2luY2x1 ZGUgPGxpbnV4L2xpc3QuaD4KKysjaW5jbHVkZSA8bGludXgvcHJvY19mcy5oPgorKyNpbmNsdWRl IDxsaW51eC9zZXFfZmlsZS5oPgorKyNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CisrI2luY2x1ZGUg PGxpbnV4L3NwaW5sb2NrLmg+CisrI2luY2x1ZGUgPGxpbnV4L3JoX2ZsYWdzLmg+CisrCisrI2Rl ZmluZSBSSF9GTEFHX05BTUVfTEVOCTMyCisrI2RlZmluZSBNQVhfUkhfRkxBR1MJCTEyOAorKyNk ZWZpbmUgTUFYX1JIX0ZMQUdfTkFNRV9MRU4JKE1BWF9SSF9GTEFHUyAqIFJIX0ZMQUdfTkFNRV9M RU4pCisrCisrc3RydWN0IHJoX2ZsYWcgeworKwlzdHJ1Y3QgbGlzdF9oZWFkIGxpc3Q7CisrCWNo YXIgbmFtZVtSSF9GTEFHX05BTUVfTEVOXTsKKyt9OworKworK3N0YXRpYyBMSVNUX0hFQUQocmhf ZmxhZ19saXN0KTsKKytzdGF0aWMgREVGSU5FX1NQSU5MT0NLKHJoX2ZsYWdfbG9jayk7CisrCisr Ym9vbCBfX3JoX2FkZF9mbGFnKGNvbnN0IGNoYXIgKmZsYWdfbmFtZSkKKyt7CisrCXN0cnVjdCBy aF9mbGFnICpmZWF0LCAqaXRlcjsKKysKKysJQlVHX09OKGluX2ludGVycnVwdCgpKTsKKysJZmVh dCA9IGt6YWxsb2Moc2l6ZW9mKCpmZWF0KSwgR0ZQX0FUT01JQyk7CisrCWlmIChXQVJOKCFmZWF0 LCAiQWRkaW5nIFJlZCBIYXQgZmxhZyAlcy5cbiIsIGZsYWdfbmFtZSkpCisrCQlyZXR1cm4gZmFs c2U7CisrCXN0cnNjcHkoZmVhdC0+bmFtZSwgZmxhZ19uYW1lLCBSSF9GTEFHX05BTUVfTEVOKTsK KysKKysJc3Bpbl9sb2NrKCZyaF9mbGFnX2xvY2spOworKwlsaXN0X2Zvcl9lYWNoX2VudHJ5X3Jj dShpdGVyLCAmcmhfZmxhZ19saXN0LCBsaXN0KSB7CisrCQlpZiAoIXN0cmNtcChpdGVyLT5uYW1l LCBmbGFnX25hbWUpKSB7CisrCQkJa2ZyZWUoZmVhdCk7CisrCQkJZmVhdCA9IE5VTEw7CisrCQkJ YnJlYWs7CisrCQl9CisrCX0KKysJaWYgKGZlYXQpCisrCQlsaXN0X2FkZF9yY3UoJmZlYXQtPmxp c3QsICZyaF9mbGFnX2xpc3QpOworKwlzcGluX3VubG9jaygmcmhfZmxhZ19sb2NrKTsKKysKKysJ aWYgKGZlYXQpCisrCQlwcl9pbmZvKCJBZGRpbmcgUmVkIEhhdCBmbGFnICVzLlxuIiwgZmxhZ19u YW1lKTsKKysJcmV0dXJuIHRydWU7CisrfQorK0VYUE9SVF9TWU1CT0woX19yaF9hZGRfZmxhZyk7 CisrCisrdm9pZCByaF9wcmludF9mbGFncyh2b2lkKQorK3sKKysJc3RydWN0IHJoX2ZsYWcgKmZl YXQ7CisrCisrCS8qCisrCSAqIFRoaXMgZnVuY3Rpb24gY2Fubm90IGRvIGFueSBsb2NraW5nLCB3 ZSdyZSBvb3BzaW5nLiBUcmF2ZXJzaW5nCisrCSAqIHJoX2ZsYWdfbGlzdCBpcyBva2F5LCB0aG91 Z2gsIGV2ZW4gd2l0aG91dCB0aGUgcmN1X3JlYWRfbG9jaworKwkgKiB0YWtlbjogd2UgbmV2ZXIg ZGVsZXRlIGZyb20gdGhhdCBsaXN0IGFuZCB0aHVzIGRvbid0IG5lZWQgdGhlCisrCSAqIGRlbGF5 ZWQgZnJlZS4gQWxsIHdlIG5lZWQgYXJlIHRoZSBzbXAgYmFycmllcnMgaW52b2tlZCBieSB0aGUg cmN1CisrCSAqIGxpc3QgbWFuaXB1bGF0aW9uIHJvdXRpbmVzLgorKwkgKi8KKysJaWYgKGxpc3Rf ZW1wdHkoJnJoX2ZsYWdfbGlzdCkpCisrCQlyZXR1cm47CisrCXByaW50ayhLRVJOX0RFRkFVTFQg IlJlZCBIYXQgZmxhZ3M6Iik7CisrCWxpc3RfZm9yX2VhY2hfZW50cnlfbG9ja2xlc3MoZmVhdCwg JnJoX2ZsYWdfbGlzdCwgbGlzdCkgeworKwkJcHJfY29udCgiICVzIiwgZmVhdC0+bmFtZSk7Cisr CX0KKysJcHJfY29udCgiXG4iKTsKKyt9CisrRVhQT1JUX1NZTUJPTChyaF9wcmludF9mbGFncyk7 CisrCisrI2lmZGVmIENPTkZJR19TWVNDVEwKKytzdGF0aWMgaW50IHJoX2ZsYWdzX3Nob3coY29u c3Qgc3RydWN0IGN0bF90YWJsZSAqY3RsLCBpbnQgd3JpdGUsCisrCQkJICAgIHZvaWQgX191c2Vy ICpidWZmZXIsIHNpemVfdCAqbGVucCwKKysJCQkgICAgbG9mZl90ICpwcG9zKQorK3sKKysJc3Ry dWN0IGN0bF90YWJsZSB0YmwgPSB7IC5tYXhsZW4gPSBNQVhfUkhfRkxBR19OQU1FX0xFTiwgfTsK KysJc3RydWN0IHJoX2ZsYWcgKmZlYXQ7CisrCXNpemVfdCBvZmZzID0gMDsKKysJaW50IHJldDsK KysKKysJdGJsLmRhdGEgPSBrbWFsbG9jKHRibC5tYXhsZW4sIEdGUF9LRVJORUwpOworKwlpZiAo IXRibC5kYXRhKQorKwkJcmV0dXJuIC1FTk9NRU07CisrCSgoY2hhciAqKXRibC5kYXRhKVswXSA9 ICdcMCc7CisrCisrCXJjdV9yZWFkX2xvY2soKTsKKysJbGlzdF9mb3JfZWFjaF9lbnRyeV9yY3Uo ZmVhdCwgJnJoX2ZsYWdfbGlzdCwgbGlzdCkgeworKwkJb2ZmcyArPSBzY25wcmludGYodGJsLmRh dGEgKyBvZmZzLCB0YmwubWF4bGVuIC0gb2ZmcywgIiVzJXMiLAorKwkJCQkgIG9mZnMgPT0gMCA/ ICIiIDogIiAiLCBmZWF0LT5uYW1lKTsKKysJfQorKwlyY3VfcmVhZF91bmxvY2soKTsKKysKKysJ cmV0ID0gcHJvY19kb3N0cmluZygmdGJsLCB3cml0ZSwgYnVmZmVyLCBsZW5wLCBwcG9zKTsKKysJ a2ZyZWUodGJsLmRhdGEpOworKwlyZXR1cm4gcmV0OworK30KKysKKytzdGF0aWMgc3RydWN0IGN0 bF90YWJsZSByaF9mbGFnc190YWJsZVtdID0geworKwl7CisrCQkucHJvY25hbWUgPSAicmhfZmxh Z3MiLAorKwkJLmRhdGEgPSAmcmhfZmxhZ19saXN0LAorKwkJLm1heGxlbiA9IE1BWF9SSF9GTEFH X05BTUVfTEVOLAorKwkJLm1vZGUgPSAwNDQ0LAorKwkJLnByb2NfaGFuZGxlciA9IHJoX2ZsYWdz X3Nob3csCisrCX0sCisrfTsKKysjZW5kaWYKKysKKytzdGF0aWMgX19pbml0IGludCByaF9mbGFn c19pbml0KHZvaWQpCisreworKyNpZmRlZiBDT05GSUdfU1lTQ1RMCisrCXJlZ2lzdGVyX3N5c2N0 bF9pbml0KCJrZXJuZWwiLCByaF9mbGFnc190YWJsZSk7CisrI2VuZGlmCisrCXJldHVybiAwOwor K30KKytzdWJzeXNfaW5pdGNhbGwocmhfZmxhZ3NfaW5pdCk7CitkaWZmIC0tZ2l0IGEva2VybmVs L3JoX21lc3NhZ2VzLmMgYi9rZXJuZWwvcmhfbWVzc2FnZXMuYworbmV3IGZpbGUgbW9kZSAxMDA2 NDQKK2luZGV4IDAwMDAwMDAwMDAwMC4uYmI2OWU4OTY1NzQ4CistLS0gL2Rldi9udWxsCisrKysg Yi9rZXJuZWwvcmhfbWVzc2FnZXMuYworQEAgLTAsMCArMSw0MTQgQEAKKysvKgorKyAqIFRoZSBm b2xsb3dpbmcgZnVuY3Rpb25zIGFyZSB1c2VkIGJ5IFJlZCBIYXQgdG8gaW5kaWNhdGUgdG8gdXNl cnMgdGhhdAorKyAqIGhhcmR3YXJlIGFuZCBkcml2ZXJzIGFyZSB1bnN1cHBvcnRlZCwgb3IgaGF2 ZSBsaW1pdGVkIHN1cHBvcnQgaW4gUkhFTCBtYWpvcgorKyAqIGFuZCBtaW5vciByZWxlYXNlcy4g IFRoZXNlIGZ1bmN0aW9ucyBvdXRwdXQgbG91ZCB3YXJuaW5nIG1lc3NhZ2VzIHRvIHRoZSBlbmQK KysgKiB1c2VyIGFuZCBzaG91bGQgYmUgVVNFRCBXSVRIIENBVVRJT04uCisrICoKKysgKiBBbnkg dXNlIG9mIHRoZXNlIGZ1bmN0aW9ucyBfTVVTVF8gYmUgZG9jdW1lbnRlZCBpbiB0aGUgUkhFTCBS ZWxlYXNlIE5vdGVzLAorKyAqIGFuZCBoYXZlIGFwcHJvdmFsIG9mIG1hbmFnZW1lbnQuCisrICoK KysgKiBHZW5lcmFsbHksIHRoZSBwcm9jZXNzIG9mIGRpc2FibGluZyBhIGRyaXZlciBvciBkZXZp Y2UgaW4gUkhFTCByZXF1aXJlcyB0aGUKKysgKiBkcml2ZXIgb3IgZGV2aWNlIHRvIGJlIG1hcmtl ZCBhcyAnZGVwcmVjYXRlZCcgaW4gYWxsIGV4aXN0aW5nIHJlbGVhc2VzLCBhbmQKKysgKiB0aGVu IGVpdGhlciAndW5tYWludGFpbmVkJyBvciAnZGlzYWJsZWQnIGluIGEgZnV0dXJlIHJlbGVhc2Uu CisrICoKKysgKiBJbiBnZW5lcmFsLCBkZXByZWNhdGVkIGFuZCB1bm1haW50YWluZWQgZHJpdmVy cyBjb250aW51ZSB0byByZWNlaXZlIHNlY3VyaXR5CisrICogcmVsYXRlZCBmaXhlcyB1bnRpbCB0 aGV5IGFyZSBkaXNhYmxlZC4KKysgKi8KKysKKysjaW5jbHVkZSA8bGludXgva2VybmVsLmg+Cisr I2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgorKyNpbmNsdWRlIDxsaW51eC9wY2kuaD4KKysjaW5j bHVkZSAicmhfbWVzc2FnZXMuaCIKKysKKysvKioKKysgKiBtYXJrX2hhcmR3YXJlX3VubWFpbnRh aW5lZCgpIC0gTWFyayBoYXJkd2FyZSBhcyB1bm1haW50YWluZWQuCisrICogQGRyaXZlcl9uYW1l OiBkcml2ZXIgbmFtZQorKyAqIEBmbXQ6IGZvcm1hdCBmb3IgZGV2aWNlIGRlc2NyaXB0aW9uCisr ICogQC4uLjogYXJncyBmb3IgZGV2aWNlIGRlc2NyaXB0aW9uCisrICoKKysgKiBDYWxsZWQgdG8g bm90aWZ5IHVzZXJzIHRoYXQgdGhlIGRldmljZSB3aWxsIG5vIGxvbmdlciBiZSB0ZXN0ZWQgb24g YSByb3V0aW5lCisrICogYmFzaXMgYW5kIGRyaXZlciBjb2RlIGFzc29jaWF0ZWQgd2l0aCB0aGlz IGRldmljZSBpcyBubyBsb25nZXIgYmVpbmcgdXBkYXRlZC4KKysgKiBSZWQgSGF0IG1heSwgYXQg dGhlaXIgb3duIGRpc2NyZXRpb24sIGZpeCBzZWN1cml0eS1yZWxhdGVkIGFuZCBjcml0aWNhbAor KyAqIGlzc3Vlcy4gIFN1cHBvcnQgZm9yIHRoaXMgZGV2aWNlIHdpbGwgYmUgZGlzYWJsZWQgaW4g YSBmdXR1cmUgbWFqb3IgcmVsZWFzZQorKyAqIGFuZCB1c2VycyBkZXBsb3lpbmcgdGhpcyBkZXZp Y2Ugc2hvdWxkIHBsYW4gdG8gcmVwbGFjZSB0aGUgZGV2aWNlIGluCisrICogcHJvZHVjdGlvbiBz eXN0ZW1zLgorKyAqCisrICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSBk cml2ZXIncyB1c2FnZSBjYW4gYmUgdGllZCB0byBhCisrICogc3BlY2lmaWMgaGFyZHdhcmUgZGV2 aWNlLiAgRm9yIGV4YW1wbGUsIGEgbmV0d29yayBkZXZpY2UgZHJpdmVyIGxvYWRpbmcgb24gYQor KyAqIHNwZWNpZmljIGRldmljZSB0aGF0IGlzIG5vIGxvbmdlciBtYWludGFpbmVkIGJ5IHRoZSBt YW51ZmFjdHVyZXIuCisrICoKKysgKiBSZXNlcnZlZCBmb3IgSW50ZXJuYWwgUmVkIEhhdCB1c2Ug b25seS4KKysgKi8KKyt2b2lkIF9fbWF5YmVfdW51c2VkIG1hcmtfaGFyZHdhcmVfdW5tYWludGFp bmVkKGNvbnN0IGNoYXIgKmRyaXZlcl9uYW1lLCBjaGFyICpmbXQsIC4uLikKKyt7CisrCWNoYXIg ZGV2aWNlX2Rlc2NyaXB0aW9uW0RFVl9ERVNDX0xFTl07CisrCXZhX2xpc3QgYXJnczsKKysKKysJ dmFfc3RhcnQoYXJncywgZm10KTsKKysJdnNucHJpbnRmKGRldmljZV9kZXNjcmlwdGlvbiwgREVW X0RFU0NfTEVOLCBmbXQsIGFyZ3MpOworKwlwcl9jcml0KFJIX1VOTUFJTlRfSFcsCisrCQlkcml2 ZXJfbmFtZSwgZGV2aWNlX2Rlc2NyaXB0aW9uKTsKKysJdmFfZW5kKGFyZ3MpOworK30KKytFWFBP UlRfU1lNQk9MKG1hcmtfaGFyZHdhcmVfdW5tYWludGFpbmVkKTsKKysKKysvKioKKysgKiBtYXJr X2hhcmR3YXJlX2RlcHJlY2F0ZWQoKSAtIE1hcmsgaGFyZHdhcmUgYXMgZGVwcmVjYXRlZC4KKysg KiBAZHJpdmVyX25hbWU6IGRyaXZlciBuYW1lCisrICogQGZtdDogZm9ybWF0IGZvciBkZXZpY2Ug ZGVzY3JpcHRpb24KKysgKiBALi4uOiBhcmdzIGZvciBkZXZpY2UgZGVzY3JpcHRpb24KKysgKgor KyAqIENhbGxlZCB0byBub3RpZnkgdXNlcnMgdGhhdCBzdXBwb3J0IGZvciB0aGUgZGV2aWNlIGlz IHBsYW5uZWQgdG8gYmUKKysgKiB1bm1haW50YWluZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFz ZSwgYW5kIHdpbGwgZXZlbnR1YWxseSBiZSBkaXNhYmxlZCBpbiBhCisrICogZnV0dXJlIG1ham9y IHJlbGVhc2UuICBUaGlzIGRldmljZSBzaG91bGQgbm90IGJlIHVzZWQgaW4gbmV3IHByb2R1Y3Rp b24KKysgKiBlbnZpcm9ubWVudHMgYW5kIHVzZXJzIHNob3VsZCByZXBsYWNlIHRoZSBkZXZpY2Ug aW4gcHJvZHVjdGlvbiBzeXN0ZW1zLgorKyAqCisrICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUg dXNlZCB3aGVuIHRoZSBkcml2ZXIncyB1c2FnZSBjYW4gYmUgdGllZCB0byBhCisrICogc3BlY2lm aWMgaGFyZHdhcmUgZGV2aWNlLiAgRm9yIGV4YW1wbGUsIGEgbmV0d29yayBkZXZpY2UgZHJpdmVy IGxvYWRpbmcgb24gYQorKyAqIHNwZWNpZmljIGRldmljZSB0aGF0IGlzIG5vIGxvbmdlciBtYWlu dGFpbmVkIGJ5IHRoZSBtYW51ZmFjdHVyZXIuCisrICoKKysgKiBSZXNlcnZlZCBmb3IgSW50ZXJu YWwgUmVkIEhhdCB1c2Ugb25seS4KKysgKi8KKyt2b2lkIF9fbWF5YmVfdW51c2VkIG1hcmtfaGFy ZHdhcmVfZGVwcmVjYXRlZChjb25zdCBjaGFyICpkcml2ZXJfbmFtZSwgY2hhciAqZm10LCAuLi4p CisreworKwljaGFyIGRldmljZV9kZXNjcmlwdGlvbltERVZfREVTQ19MRU5dOworKwl2YV9saXN0 IGFyZ3M7CisrCisrCXZhX3N0YXJ0KGFyZ3MsIGZtdCk7CisrCXZzbnByaW50ZihkZXZpY2VfZGVz Y3JpcHRpb24sIERFVl9ERVNDX0xFTiwgZm10LCBhcmdzKTsKKysJcHJfY3JpdChSSF9ERVBSRUNB VEVEX0hXLAorKwkJZHJpdmVyX25hbWUsIGRldmljZV9kZXNjcmlwdGlvbik7CisrCXZhX2VuZChh cmdzKTsKKyt9CisrCisrLyoqCisrICogbWFya19oYXJkd2FyZV9kaXNhYmxlZCgpIC0gTWFyayBh IGRyaXZlciBhcyByZW1vdmVkLgorKyAqIEBkcml2ZXJfbmFtZTogZHJpdmVyIG5hbWUKKysgKiBA Zm10OiBmb3JtYXQgZm9yIGRldmljZSBkZXNjcmlwdGlvbgorKyAqIEAuLi46IGFyZ3MgZm9yIGRl dmljZSBkZXNjcmlwdGlvbgorKyAqCisrICogQ2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0aGF0IGEg ZGV2aWNlJ3Mgc3VwcG9ydCBoYXMgYmVlbiBjb21wbGV0ZWx5IGRpc2FibGVkCisrICogYW5kIG5v IGZ1dHVyZSBzdXBwb3J0IHVwZGF0ZXMgd2lsbCBvY2N1ci4gIFRoaXMgZGV2aWNlIGNhbm5vdCBi ZSB1c2VkIGluIG5ldworKyAqIHByb2R1Y3Rpb24gZW52aXJvbm1lbnRzLCBhbmQgdXNlcnMgbXVz dCByZXBsYWNlIHRoZSBkZXZpY2UgaW4gcHJvZHVjdGlvbgorKyAqIHN5c3RlbXMuCisrICoKKysg KiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBiZSB1c2VkIHdoZW4gdGhlIGRyaXZlcidzIHVzYWdlIGNh biBiZSB0aWVkIHRvIGEKKysgKiBzcGVjaWZpYyBoYXJkd2FyZSBkZXZpY2UuICBGb3IgZXhhbXBs ZSwgYSBuZXR3b3JrIGRldmljZSBkcml2ZXIgbG9hZGluZyBvbiBhCisrICogc3BlY2lmaWMgZGV2 aWNlIHRoYXQgaXMgbm8gbG9uZ2VyIG1haW50YWluZWQgYnkgdGhlIG1hbnVmYWN0dXJlci4KKysg KgorKyAqIFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgorKyAqLworK3N0 YXRpYyB2b2lkIF9fbWF5YmVfdW51c2VkIG1hcmtfaGFyZHdhcmVfZGlzYWJsZWQoY29uc3QgY2hh ciAqZHJpdmVyX25hbWUsIGNoYXIgKmZtdCwgLi4uKQorK3sKKysJY2hhciBkZXZpY2VfZGVzY3Jp cHRpb25bREVWX0RFU0NfTEVOXTsKKysJdmFfbGlzdCBhcmdzOworKworKwl2YV9zdGFydChhcmdz LCBmbXQpOworKwl2c25wcmludGYoZGV2aWNlX2Rlc2NyaXB0aW9uLCBERVZfREVTQ19MRU4sIGZt dCwgYXJncyk7CisrCXByX2NyaXQoUkhfRElTQUJMRURfSFcsCisrCQlkcml2ZXJfbmFtZSwgZGV2 aWNlX2Rlc2NyaXB0aW9uKTsKKysJdmFfZW5kKGFyZ3MpOworK30KKysKKysjaWZkZWYgQ09ORklH X1BDSQorKy8qKgorKyAqIHBjaV9od19kZXByZWNhdGVkKCkgLSBNYXJrIGEgUENJIGRldmljZSBk ZXByZWNhdGVkLgorKyAqIEBkZXY6IHRoZSBQQ0kgZGV2aWNlIHN0cnVjdHVyZSB0byBtYXRjaCBh Z2FpbnN0CisrICoKKysgKiBDYWxsZWQgdG8gY2hlY2sgaWYgdGhpcyBAZGV2IGlzIGluIHRoZSBs aXN0IG9mIGRlcHJlY2F0ZWQgZGV2aWNlcy4KKysgKgorKyAqIFJlc2VydmVkIGZvciBJbnRlcm5h bCBSZWQgSGF0IHVzZSBvbmx5LgorKyAqLworK3N0YXRpYyB2b2lkIF9fbWF5YmVfdW51c2VkIHBj aV9od19kZXByZWNhdGVkKHN0cnVjdCBwY2lfZGV2ICpkZXYpCisreworKwljb25zdCBzdHJ1Y3Qg cGNpX2RldmljZV9pZCAqcmV0ID0gcGNpX21hdGNoX2lkKHJoX2RlcHJlY2F0ZWRfcGNpX2Rldmlj ZXMsIGRldik7CisrCisrCWlmICghcmV0KQorKwkJcmV0dXJuOworKworKwltYXJrX2hhcmR3YXJl X2RlcHJlY2F0ZWQoZGV2X2RyaXZlcl9zdHJpbmcoJmRldi0+ZGV2KSwgIiUwNFg6JTA0WCBAICVz IiwKKysJCQkJIGRldi0+ZGV2aWNlLCBkZXYtPnZlbmRvciwgcGNpX25hbWUoZGV2KSk7CisrfQor KworKy8qKgorKyAqIHBjaV9od191bm1haW50YWluZWQoKSAtIE1hcmsgYSBQQ0kgZGV2aWNlIHVu bWFpbnRhaW5lZC4KKysgKiBAZGV2OiB0aGUgUENJIGRldmljZSBzdHJ1Y3R1cmUgdG8gbWF0Y2gg YWdhaW5zdAorKyAqCisrICogQ2FsbGVkIHRvIGNoZWNrIGlmIHRoaXMgQGRldiBpcyBpbiB0aGUg bGlzdCBvZiB1bm1haW50YWluZWQgZGV2aWNlcy4KKysgKgorKyAqIFJlc2VydmVkIGZvciBJbnRl cm5hbCBSZWQgSGF0IHVzZSBvbmx5LgorKyAqLworK3N0YXRpYyB2b2lkIHBjaV9od191bm1haW50 YWluZWQoc3RydWN0IHBjaV9kZXYgKmRldikKKyt7CisrCWNvbnN0IHN0cnVjdCBwY2lfZGV2aWNl X2lkICpyZXQgPSBwY2lfbWF0Y2hfaWQocmhfdW5tYWludGFpbmVkX3BjaV9kZXZpY2VzLCBkZXYp OworKworKwlpZiAoIXJldCkKKysJCXJldHVybjsKKysKKysJbWFya19oYXJkd2FyZV91bm1haW50 YWluZWQoZGV2X2RyaXZlcl9zdHJpbmcoJmRldi0+ZGV2KSwgIiUwNFg6JTA0WCBAICVzIiwKKysJ CQkJICAgZGV2LT5kZXZpY2UsIGRldi0+dmVuZG9yLCBwY2lfbmFtZShkZXYpKTsKKyt9CisrCisr LyoqCisrICogcGNpX2h3X2Rpc2FibGVkKCkgLSBNYXJrIGEgUENJIGRldmljZSBkaXNhYmxlZC4K KysgKiBAZGV2OiB0aGUgUENJIGRldmljZSBzdHJ1Y3R1cmUgdG8gbWF0Y2ggYWdhaW5zdAorKyAq CisrICogQ2FsbGVkIHRvIGNoZWNrIGlmIHRoaXMgQGRldiBpcyBpbiB0aGUgbGlzdCBvZiBkaXNh YmxlZCBkZXZpY2VzLgorKyAqCisrICogUmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNl IG9ubHkuCisrICovCisrc3RhdGljIGJvb2wgX19tYXliZV91bnVzZWQgcGNpX2h3X2Rpc2FibGVk KHN0cnVjdCBwY2lfZGV2ICpkZXYpCisreworKwljb25zdCBzdHJ1Y3QgcGNpX2RldmljZV9pZCAq cmV0ID0gcGNpX21hdGNoX2lkKHJoX2Rpc2FibGVkX3BjaV9kZXZpY2VzLCBkZXYpOworKworKwlp ZiAoIXJldCkKKysJCXJldHVybiBmYWxzZTsKKysKKysJbWFya19oYXJkd2FyZV9kaXNhYmxlZChk ZXZfZHJpdmVyX3N0cmluZygmZGV2LT5kZXYpLCAiJTA0WDolMDRYIEAgJXMiLAorKwkJCQkgICBk ZXYtPmRldmljZSwgZGV2LT52ZW5kb3IsIHBjaV9uYW1lKGRldikpOworKwlyZXR1cm4gdHJ1ZTsK Kyt9CisrI2VuZGlmCisrCisrLyoqCisrICogZHJpdmVyX3VubWFpbnRhaW5lZCgpIC0gY2hlY2sg dG8gc2VlIGlmIGEgZHJpdmVyIGlzIHVubWFpbnRhaW5lZAorKyAqIEBtb2R1bGVfbmFtZTogbW9k dWxlIG5hbWUKKysgKgorKyAqIENhbGxlZCB0byBub3RpZnkgdXNlcnMgdGhhdCBhIGRyaXZlciB3 aWxsIG5vIGxvbmdlciBiZSB0ZXN0ZWQgb24gYSByb3V0aW5lCisrICogYmFzaXMgYW5kIHRoZSBk cml2ZXIgY29kZSBpcyBubyBsb25nZXIgYmVpbmcgdXBkYXRlZC4gIFJlZCBIYXQgbWF5IGZpeAor KyAqIHNlY3VyaXR5LXJlbGF0ZWQgYW5kIGNyaXRpY2FsIGlzc3Vlcy4gIFN1cHBvcnQgZm9yIHRo aXMgZHJpdmVyIHdpbGwgYmUKKysgKiBkaXNhYmxlZCBpbiBhIGZ1dHVyZSBtYWpvciByZWxlYXNl LCBhbmQgdXNlcnMgc2hvdWxkIHJlcGxhY2UgYW55IGFmZmVjdGVkCisrICogZGV2aWNlcyBpbiBw cm9kdWN0aW9uIHN5c3RlbXMuCisrICoKKysgKiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBiZSB1c2Vk IHdoZW4gYSBkcml2ZXIncyB1c2FnZSBjYW5ub3QgYmUgdGllZCB0byBhCisrICogc3BlY2lmaWMg aGFyZHdhcmUgZGV2aWNlLiAgRm9yIGV4YW1wbGUsIGEgbmV0d29yayBib25kaW5nIGRyaXZlciBv ciBhIGhpZ2hlcgorKyAqIGxldmVsIHN0b3JhZ2UgbGF5ZXIgZHJpdmVyIHRoYXQgaXMgbm8gbG9u Z2VyIG1haW50YWluZWQgdXBzdHJlYW0uCisrICoKKysgKiBSZXNlcnZlZCBmb3IgSW50ZXJuYWwg UmVkIEhhdCB1c2Ugb25seS4KKysgKi8KKytzdGF0aWMgdm9pZCBfX21heWJlX3VudXNlZCBkcml2 ZXJfdW5tYWludGFpbmVkKGNvbnN0IGNoYXIqIG1vZHVsZV9uYW1lKQorK3sKKysJaW50IGkgPSAw OworKworKwl3aGlsZSAocmhfdW5tYWludGFpbmVkX2RyaXZlcnNbaV0pIHsKKysJCWlmIChzdHJj bXAocmhfdW5tYWludGFpbmVkX2RyaXZlcnNbaV0sIG1vZHVsZV9uYW1lKSA9PSAwKSB7CisrCQkJ cHJfY3JpdChSSF9VTk1BSU5UX0RSLCBtb2R1bGVfbmFtZSk7CisrCQkJcmV0dXJuOworKwkJfQor KwkJaSsrOworKwl9CisrfQorKworKy8qKgorKyAqIGRyaXZlcl9kZXByZWNhdGVkKCkgLSBjaGVj ayB0byBzZWUgaWYgYSBkcml2ZXIgaXMgZGVwcmVjYXRlZAorKyAqIEBkcml2ZXJfbmFtZTogbW9k dWxlIG5hbWUKKysgKgorKyAqIENhbGxlZCB0byBub3RpZnkgdXNlcnMgdGhhdCBzdXBwb3J0IGZv ciB0aGlzIGRyaXZlciBpcyBwbGFubmVkIHRvIGJlCisrICogdW5tYWludGFpbmVkIGluIGEgZnV0 dXJlIG1ham9yIHJlbGVhc2UsIGFuZCB3aWxsIGV2ZW50dWFsbHkgYmUgZGlzYWJsZWQgaW4gYQor KyAqIGZ1dHVyZSBtYWpvciByZWxlYXNlLiAgVGhpcyBkcml2ZXIgc2hvdWxkIG5vdCBiZSB1c2Vk IGluIG5ldyBwcm9kdWN0aW9uCisrICogZW52aXJvbm1lbnRzIGFuZCB1c2VycyBzaG91bGQgcmVw bGFjZSBhbnkgYWZmZWN0ZWQgZGV2aWNlcyBpbiBwcm9kdWN0aW9uCisrICogc3lzdGVtcy4KKysg KgorKyAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIHVzZWQgd2hlbiBhIGRyaXZlcidzIHVzYWdl IGNhbm5vdCBiZSB0aWVkIHRvIGEKKysgKiBzcGVjaWZpYyBoYXJkd2FyZSBkZXZpY2UuICBGb3Ig ZXhhbXBsZSwgYSBuZXR3b3JrIGJvbmRpbmcgZHJpdmVyIG9yIGEgaGlnaGVyCisrICogbGV2ZWwg c3RvcmFnZSBsYXllciBkcml2ZXIgdGhhdCBpcyBubyBsb25nZXIgbWFpbnRhaW5lZCB1cHN0cmVh bS4KKysgKgorKyAqIFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgorKyAq LworK3N0YXRpYyB2b2lkIF9fbWF5YmVfdW51c2VkIGRyaXZlcl9kZXByZWNhdGVkKGNvbnN0IGNo YXIqIG1vZHVsZV9uYW1lKQorK3sKKysJaW50IGkgPSAwOworKworKwl3aGlsZSAocmhfZGVwcmVj YXRlZF9kcml2ZXJzW2ldKSB7CisrCQlpZiAoc3RyY21wKHJoX2RlcHJlY2F0ZWRfZHJpdmVyc1tp XSwgbW9kdWxlX25hbWUpID09IDApIHsKKysJCQlwcl9jcml0KFJIX0RFUFJFQ0FURURfRFIsIG1v ZHVsZV9uYW1lKTsKKysJCQlyZXR1cm47CisrCQl9CisrCQlpKys7CisrCX0KKyt9CisrCisrLyog VGhlcmUgaXMgbm8gZHJpdmVyX2Rpc2FibGVkKCkgZnVuY3Rpb24uICBEaXNhYmxlZCBkcml2ZXJz IGFyZSBjb25maWd1cmVkIG9mZiA7KS4gKi8KKysKKysvKioKKysgKiBpbml0X2ZuX3VubWFpbnRh aW5lZCAtIGNoZWNrIHRvIHNlZSBpZiBhIGJ1aWx0LWluIGRyaXZlciBpcyB1bm1haW50YWluZWQu CisrICogQGZuX25hbWU6IG1vZHVsZSdzIG1vZHVsZV9pbml0IGZ1bmN0aW9uIG5hbWUKKysgKgor KyAqIENhbGxlZCB0byBub3RpZnkgdXNlcnMgdGhhdCBhIGJ1aWx0LWluIGRyaXZlciB3aWxsIG5v IGxvbmdlciBiZSB0ZXN0ZWQgb24gYSByb3V0aW5lCisrICogYmFzaXMgYW5kIHRoZSBidWlsdC1p biBkcml2ZXIgY29kZSBpcyBubyBsb25nZXIgYmVpbmcgdXBkYXRlZC4gIFJlZCBIYXQgbWF5IGZp eAorKyAqIHNlY3VyaXR5LXJlbGF0ZWQgYW5kIGNyaXRpY2FsIGlzc3Vlcy4gIFN1cHBvcnQgZm9y IHRoaXMgYnVpbHQtaW4gZHJpdmVyIHdpbGwgYmUKKysgKiBkaXNhYmxlZCBpbiBhIGZ1dHVyZSBt YWpvciByZWxlYXNlLCBhbmQgdXNlcnMgc2hvdWxkIHJlcGxhY2UgYW55IGFmZmVjdGVkCisrICog ZGV2aWNlcyBpbiBwcm9kdWN0aW9uIHN5c3RlbXMuCisrICoKKysgKiBUaGlzIGZ1bmN0aW9uIHNo b3VsZCBiZSB1c2VkIHdoZW4gYSBidWlsdC1pbiBkcml2ZXIncyB1c2FnZSBjYW5ub3QgYmUgdGll ZCB0byBhCisrICogc3BlY2lmaWMgaGFyZHdhcmUgZGV2aWNlLiAgRm9yIGV4YW1wbGUsIGEgbmV0 d29yayBib25kaW5nIGRyaXZlciBvciBhIGhpZ2hlcgorKyAqIGxldmVsIHN0b3JhZ2UgbGF5ZXIg ZHJpdmVyIHRoYXQgaXMgbm8gbG9uZ2VyIG1haW50YWluZWQgdXBzdHJlYW0uCisrICoKKysgKiBS ZXNlcnZlZCBmb3IgSW50ZXJuYWwgUmVkIEhhdCB1c2Ugb25seS4KKysgKi8KKysKKytzdGF0aWMg dm9pZCBfX21heWJlX3VudXNlZCBpbml0X2ZuX3VubWFpbnRhaW5lZChjaGFyKiBmbl9uYW1lKQor K3sKKysJaW50IGkgPSAwOworKworKwl3aGlsZSAocmhfdW5tYWludGFpbmVkX2luaXRfZm5zW2ld KSB7CisrCQlpZiAoc3RyY21wKHJoX3VubWFpbnRhaW5lZF9pbml0X2Zuc1tpXSwgZm5fbmFtZSkg PT0gMCkgeworKwkJCXByX2NyaXQoUkhfVU5NQUlOVF9EUiwgZm5fbmFtZSk7CisrCQkJcmV0dXJu OworKwkJfQorKwkJaSsrOworKwl9CisrfQorKworKy8qKgorKyAqIGluaXRfZm5fZGVwcmVjYXRl ZCgpIC0gY2hlY2sgdG8gc2VlIGlmIGEgYnVpbHQtaW4gZHJpdmVyIGlzIGRlcHJlY2F0ZWQKKysg KiBAZm5fbmFtZTogbW9kdWxlJ3MgbW9kdWxlX2luaXQgZnVuY3Rpb24gbmFtZQorKyAqCisrICog Q2FsbGVkIHRvIG5vdGlmeSB1c2VycyB0aGF0IHN1cHBvcnQgZm9yIHRoaXMgYnVpbHQtaW4gZHJp dmVyIGlzIHBsYW5uZWQgdG8gYmUKKysgKiB1bm1haW50YWluZWQgaW4gYSBmdXR1cmUgbWFqb3Ig cmVsZWFzZSwgYW5kIHdpbGwgZXZlbnR1YWxseSBiZSBkaXNhYmxlZCBpbiBhCisrICogZnV0dXJl IG1ham9yIHJlbGVhc2UuICBUaGlzIGRyaXZlciBzaG91bGQgbm90IGJlIHVzZWQgaW4gbmV3IHBy b2R1Y3Rpb24KKysgKiBlbnZpcm9ubWVudHMgYW5kIHVzZXJzIHNob3VsZCByZXBsYWNlIGFueSBh ZmZlY3RlZCBkZXZpY2VzIGluIHByb2R1Y3Rpb24KKysgKiBzeXN0ZW1zLgorKyAqCisrICogVGhp cyBmdW5jdGlvbiBzaG91bGQgYmUgdXNlZCB3aGVuIGEgYnVpbHQtaW4gZHJpdmVyJ3MgdXNhZ2Ug Y2Fubm90IGJlIHRpZWQgdG8gYQorKyAqIHNwZWNpZmljIGhhcmR3YXJlIGRldmljZS4gIEZvciBl eGFtcGxlLCBhIG5ldHdvcmsgYm9uZGluZyBkcml2ZXIgb3IgYSBoaWdoZXIKKysgKiBsZXZlbCBz dG9yYWdlIGxheWVyIGRyaXZlciB0aGF0IGlzIG5vIGxvbmdlciBtYWludGFpbmVkIHVwc3RyZWFt LgorKyAqCisrICogUmVzZXJ2ZWQgZm9yIEludGVybmFsIFJlZCBIYXQgdXNlIG9ubHkuCisrICov Cisrc3RhdGljIHZvaWQgX19tYXliZV91bnVzZWQgaW5pdF9mbl9kZXByZWNhdGVkKGNoYXIqIGZu X25hbWUpCisreworKwlpbnQgaSA9IDA7CisrCisrCXdoaWxlIChyaF9kZXByZWNhdGVkX2luaXRf Zm5zW2ldKSB7CisrCQlpZiAoc3RyY21wKHJoX2RlcHJlY2F0ZWRfaW5pdF9mbnNbaV0sIGZuX25h bWUpID09IDApIHsKKysJCQlwcl9jcml0KFJIX0RFUFJFQ0FURURfRFIsIGZuX25hbWUpOworKwkJ CXJldHVybjsKKysJCX0KKysJCWkrKzsKKysJfQorK30KKysKKysvKioKKysgKiBtYXJrX3RlY2hf cHJldmlldygpIC0gTWFyayBkcml2ZXIgb3Iga2VybmVsIHN1YnN5c3RlbSBhcyAnVGVjaCBQcmV2 aWV3JworKyAqIEBtc2c6IERyaXZlciBvciBrZXJuZWwgc3Vic3lzdGVtIG5hbWUKKysgKgorKyAq IENhbGxlZCB0byBtaW5pbWl6ZSB0aGUgc3VwcG9ydCBzdGF0dXMgb2YgYSBuZXcgZHJpdmVyLiAg VGhpcyBkb2VzIFRBSU5UIHRoZQorKyAqIGtlcm5lbC4gIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBp bmRpY2F0ZXMgdGhhdCB0aGUgZHJpdmVyIG9yIHN1YnN5c3RlbSBoYXMKKysgKiBoYWQgbGltaXRl ZCB0ZXN0aW5nIGFuZCBpcyBub3QgbWFya2VkIGZvciBmdWxsIHN1cHBvcnQgd2l0aGluIHRoaXMg UkhFTAorKyAqIG1pbm9yIHJlbGVhc2UuICBUaGUgbmV4dCBSSEVMIG1pbm9yIHJlbGVhc2UgbWF5 IGNvbnRhaW4gZnVsbCBzdXBwb3J0IGZvcgorKyAqIHRoaXMgZHJpdmVyLiAgUmVkIEhhdCBkb2Vz IG5vdCBndWFyYW50ZWUgdGhhdCBidWdzIHJlcG9ydGVkIGFnYWluc3QgdGhpcworKyAqIGRyaXZl ciBvciBzdWJzeXN0ZW0gd2lsbCBiZSByZXNvbHZlZC4KKysgKgorKyAqIFJlc2VydmVkIGZvciBJ bnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgorKyAqLworK3ZvaWQgX19tYXliZV91bnVzZWQgbWFy a190ZWNoX3ByZXZpZXcoY29uc3QgY2hhciAqbXNnLCBzdHJ1Y3QgbW9kdWxlICptb2QpCisrewor Kwljb25zdCBjaGFyICpzdHIgPSBOVUxMOworKworKwlpZiAobXNnKQorKwkJc3RyID0gbXNnOwor KyNpZmRlZiBDT05GSUdfTU9EVUxFUworKwllbHNlIGlmIChtb2QpCisrCQlzdHIgPSBtb2QtPm5h bWU7CisrI2VuZGlmCisrCisrCXByX3dhcm4oUkhfVEVDSF9QUkVWSUVXLCAoc3RyID8gc3RyIDog Imtlcm5lbCIpKTsKKysJYWRkX3RhaW50KFRBSU5UX0FVWCwgTE9DS0RFUF9TVElMTF9PSyk7Cisr I2lmZGVmIENPTkZJR19NT0RVTEVTCisrCWlmIChtb2QpCisrCQltb2QtPnRhaW50cyB8PSAoMVUg PDwgVEFJTlRfQVVYKTsKKysjZW5kaWYKKyt9CisrRVhQT1JUX1NZTUJPTChtYXJrX3RlY2hfcHJl dmlldyk7CisrCisrLyoqCisrICogbWFya19wYXJ0bmVyX3N1cHBvcnRlZCgpIC0gTWFyayBkcml2 ZXIgb3Iga2VybmVsIHN1YnN5c3RlbSBhcyAnUGFydG5lciBTdXBwb3J0ZWQnCisrICogQG1zZzog RHJpdmVyIG9yIGtlcm5lbCBzdWJzeXN0ZW0gbmFtZQorKyAqCisrICogQ2FsbGVkIHRvIG1pbmlt aXplIHRoZSBzdXBwb3J0IHN0YXR1cyBvZiBhIG5ldyBkcml2ZXIuICBUaGlzIGRvZXMgVEFJTlQg dGhlCisrICoga2VybmVsLiAgQ2FsbGluZyB0aGlzIGZ1bmN0aW9uIGluZGljYXRlcyB0aGF0IHRo ZSBkcml2ZXIgb3Igc3Vic3lzdGVtCisrICogaXMgbm90IHN1cHBvcnRlZCBkaXJlY3RseSBieSBS ZWQgSGF0IGJ1dCBieSBhIHBhcnRuZXIgZW5naW5lZXIuCisrICoKKysgKiBSZXNlcnZlZCBmb3Ig SW50ZXJuYWwgUmVkIEhhdCB1c2Ugb25seS4KKysgKi8KKyt2b2lkIF9fbWF5YmVfdW51c2VkIG1h cmtfcGFydG5lcl9zdXBwb3J0ZWQoY29uc3QgY2hhciAqbXNnLCBzdHJ1Y3QgbW9kdWxlICptb2Qp CisreworKyAgICAgICAgY29uc3QgY2hhciAqc3RyID0gTlVMTDsKKysKKysgICAgICAgIGlmICht c2cpCisrICAgICAgICAgICAgICAgIHN0ciA9IG1zZzsKKysjaWZkZWYgQ09ORklHX01PRFVMRVMK KysJZWxzZSBpZiAobW9kKQorKwkJc3RyID0gbW9kLT5uYW1lOworKyNlbmRpZgorKworKyAgICAg ICAgcHJfd2FybihSSF9QQVJUTkVSX1NVUFBPUlRFRCwgKHN0ciA/IHN0ciA6ICJrZXJuZWwiKSk7 CisrICAgICAgICBhZGRfdGFpbnQoVEFJTlRfUEFSVE5FUl9TVVBQT1JURUQsIExPQ0tERVBfU1RJ TExfT0spOworKyNpZmRlZiBDT05GSUdfTU9EVUxFUworKyAgICAgICAgaWYgKG1vZCkKKysgICAg ICAgICAgICAgICAgbW9kLT50YWludHMgfD0gKDFVIDw8IFRBSU5UX1BBUlRORVJfU1VQUE9SVEVE KTsKKysjZW5kaWYKKyt9CisrRVhQT1JUX1NZTUJPTChtYXJrX3BhcnRuZXJfc3VwcG9ydGVkKTsK KysKKysvKgorKyAqCisrICogRnVuY3Rpb25zIGNhbGxlZCBieSAnbWFpbicga2VybmVsIGNvZGUu CisrICoKKysgKi8KKysKKysjaWZkZWYgQ09ORklHX1BDSQorKy8qKgorKyAqIHBjaV9yaF9jaGVj a19zdGF0dXMgLSBjaGVja3MgdGhlIHN0YXR1cyBvZiBhIFBDSSBkZXZpY2UuCisrICogQHBjaV9k ZXY6IFBDSSBkZXZpY2UgdG8gYmUgZXhhbWluZWQKKysgKgorKyAqIFRoaXMgZnVuY3Rpb24gaXMg Y2FsbGVkIGJ5IHRoZSBQQ0kgZHJpdmVyIHN1YnN5c3RlbSB0byBjaGVjayB0aGUgc3RhdHVzIG9m IGEKKysgKiBQQ0kgZGV2aWNlLgorKyAqCisrICogVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRydWUg aWYgdGhlIFBDSSBkZXZpY2UgaXMgZGlzYWJsZWQsIGFuZCBmYWxzZSBvdGhlcndpc2UuCisrICoK KysgKiBSZXNlcnZlZCBmb3IgSW50ZXJuYWwgUmVkIEhhdCB1c2Ugb25seS4KKysgKi8KKytib29s IF9fbWF5YmVfdW51c2VkIHBjaV9yaF9jaGVja19zdGF0dXMoc3RydWN0IHBjaV9kZXYgKnBjaV9k ZXYpCisreworKwlpZiAocGNpX2Rldi0+ZHJpdmVyLT5kcml2ZXIub3duZXIgIT0gTlVMTCkgewor KwkJaWYgKCF0ZXN0X2JpdChUQUlOVF9PT1RfTU9EVUxFLCAmcGNpX2Rldi0+ZHJpdmVyLT5kcml2 ZXIub3duZXItPnRhaW50cykpIHsKKysJCQlwY2lfaHdfdW5tYWludGFpbmVkKHBjaV9kZXYpOwor KwkJCXBjaV9od19kZXByZWNhdGVkKHBjaV9kZXYpOworKwkJCXJldHVybiBwY2lfaHdfZGlzYWJs ZWQocGNpX2Rldik7CisrCQl9CisrCX0KKysJcmV0dXJuIGZhbHNlOworK30KKysjZW5kaWYKKysK KysvKiogbW9kdWxlX3JoX2NoZWNrX3N0YXR1cyAtIGNoZWNrcyB0aGUgc3RhdHVzIG9mIGEgbW9k dWxlLgorKyAqIEBtb2R1bGVfbmFtZTogTmFtZSBvZiBtb2R1bGUgdG8gYmUgZXhhbWluZWQKKysg KgorKyAqIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGJ5IHRoZSBtb2R1bGUgbG9hZGluZyBjb2Rl IHRvIGNoZWNrIHRoZSBzdGF0dXMgb2YgYQorKyAqIG1vZHVsZS4KKysgKgorKyAqIFJlc2VydmVk IGZvciBJbnRlcm5hbCBSZWQgSGF0IHVzZSBvbmx5LgorKyAqLworK3ZvaWQgX19tYXliZV91bnVz ZWQgbW9kdWxlX3JoX2NoZWNrX3N0YXR1cyhjb25zdCBjaGFyICogbW9kdWxlX25hbWUpCisrewor Kwlkcml2ZXJfdW5tYWludGFpbmVkKG1vZHVsZV9uYW1lKTsKKysJZHJpdmVyX2RlcHJlY2F0ZWQo bW9kdWxlX25hbWUpOworK30KKysKKysvKioKKysgICogaW5pdF9yaF9jaGVja19zdGF0dXMgLSBj aGVja3MgdGhlIHN0YXR1cyBvZiBhIGJ1aWx0LWluIG1vZHVsZS4KKysgICogQGZuX25hbWU6IGlu aXQgZnVuY3Rpb24gb2YgbW9kdWxlIHRvIGJlIGV4YW1pbmVkCisrICAqCisrICAqIFRoaXMgZnVu Y3Rpb24gaXMgY2FsbGVkIGJ5IHRoZSBpbml0IGNvZGUgdG8gY2hlY2sgdGhlIHN0YXR1cyBvZiBh IGJ1aWx0LWluIG1vZHVsZS4KKysgICogV2hlbiBhIG1vZHVsZSBpcyBidWlsdC1pbiwgdGhlIG1v ZHVsZV9pbml0KCkgZnVuY3Rpb24gaXMgY29udmVydGVkIGludG8gYW4gaW5pdGNhbGwuCisrICAq IFRoZSBpbml0Y2FsbCBpcyB0aGUgY2FsbGVkIGR1cmluZyBib290IHdpdGggdGhlIG90aGVyIHN5 c3RlbSBpbml0Y2FsbHMuCisrICAqCisrICAqIFJlc2VydmVkIGZvciBJbnRlcm5hbCBSZWQgSGF0 IHVzZSBvbmx5LgorKyAgKi8KKyt2b2lkIF9fbWF5YmVfdW51c2VkIGluaXRfcmhfY2hlY2tfc3Rh dHVzKGNoYXIgKmZuX25hbWUpCisreworKwlpbml0X2ZuX2RlcHJlY2F0ZWQoZm5fbmFtZSk7Cisr CWluaXRfZm5fdW5tYWludGFpbmVkKGZuX25hbWUpOworK30KK2RpZmYgLS1naXQgYS9rZXJuZWwv cmhfbWVzc2FnZXMuaCBiL2tlcm5lbC9yaF9tZXNzYWdlcy5oCituZXcgZmlsZSBtb2RlIDEwMDY0 NAoraW5kZXggMDAwMDAwMDAwMDAwLi42Yzc1N2EyZmU0ZTAKKy0tLSAvZGV2L251bGwKKysrKyBi L2tlcm5lbC9yaF9tZXNzYWdlcy5oCitAQCAtMCwwICsxLDMzNCBAQAorKy8qCisrICogV0FSTklO RzogVGhpcyBmaWxlIGlzIGF1dG8tZ2VuZXJhdGVkIGJ5IGFuIGludGVybmFsIFJlZCBIYXQgc2Ny aXB0IGFuZCwKKysgKiBpbiBnZW5lcmFsLCBzaG91bGQgbm90IGJlIG1vZGlmaWVkIGJ5IGhhbmQu CisrICogU2VlOiBodHRwczovL2dpdGxhYi5jb20vcmVkaGF0L3JoZWwvc3JjL2tlcm5lbC9oYXJk d2FyZS1yZW1vdmFsLXN1cHBvcnQKKysgKi8KKysKKysvKgorKyAqIFRoZSBmb2xsb3dpbmcgdGFi bGVzIGFyZSB1c2VkIGJ5IFJlZCBIYXQgdG8gZGVmaW5lIHdoYXQgaGFyZHdhcmUgYW5kIGRyaXZl cnMKKysgKiBhcmUgdW5zdXBwb3J0ZWQsIG9yIGhhdmUgbGltaXRlZCBzdXBwb3J0IGluIFJIRUwg bWFqb3IgYW5kIG1pbm9yIHJlbGVhc2VzLgorKyAqCisrICogR2VuZXJhbGx5LCB0aGUgcHJvY2Vz cyBvZiBkaXNhYmxpbmcgYSBkcml2ZXIgb3IgZGV2aWNlIGluIFJIRUwgcmVxdWlyZXMgdGhlCisr ICogZHJpdmVyIG9yIGRldmljZSB0byBiZSBtYXJrZWQgYXMgJ2RlcHJlY2F0ZWQnIGluIGFsbCBl eGlzdGluZyByZWxlYXNlcywgYW5kCisrICogdGhlbiBlaXRoZXIgJ3VubWFpbnRhaW5lZCcgb3Ig J2Rpc2FibGVkJyBpbiBhIGZ1dHVyZSByZWxlYXNlLgorKyAqCisrICogSW4gZ2VuZXJhbCwgZGVw cmVjYXRlZCBhbmQgdW5tYWludGFpbmVkIGRyaXZlcnMgY29udGludWUgdG8gcmVjZWl2ZSBzZWN1 cml0eQorKyAqIHJlbGF0ZWQgZml4ZXMgdW50aWwgdGhleSBhcmUgZGlzYWJsZWQuCisrICovCisr IAorKyNpZm5kZWYgX19SSF9NRVNTQUdFU19ICisrI2RlZmluZSBfX1JIX01FU1NBR0VTX0gKKysK KysjaW5jbHVkZSA8bGludXgvdmVyc2lvbi5oPgorKyNpbmNsdWRlIDxsaW51eC9wY2kuaD4KKysK KysjZGVmaW5lIERFVl9ERVNDX0xFTiAyNTYKKysKKysjZGVmaW5lIFJIX1VOTUFJTlRfSFcgIldh cm5pbmc6IFVubWFpbnRhaW5lZCBIYXJkd2FyZSBpcyBkZXRlY3RlZDogJXM6JXNcbiIKKysKKysj ZGVmaW5lIFJIX1VOTUFJTlRfRFIgIldhcm5pbmc6IFVubWFpbnRhaW5lZCBkcml2ZXIgaXMgZGV0 ZWN0ZWQ6ICVzXG4iCisrCisrI2RlZmluZSBSSF9ERVBSRUNBVEVEX0hXICJXYXJuaW5nOiBEZXBy ZWNhdGVkIEhhcmR3YXJlIGlzIGRldGVjdGVkOiAlczolcyAiIFwKKysJCQkgIndpbGwgbm90IGJl IG1haW50YWluZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZSAiIFwKKysJCQkgImFuZCBtYXkg YmUgZGlzYWJsZWRcbiIKKysKKysjZGVmaW5lIFJIX0RFUFJFQ0FURURfRFIgIldhcm5pbmc6IERl cHJlY2F0ZWQgRHJpdmVyIGlzIGRldGVjdGVkOiAlcyB3aWxsICIgXAorKwkJCSAibm90IGJlIG1h aW50YWluZWQgaW4gYSBmdXR1cmUgbWFqb3IgcmVsZWFzZSBhbmQgIiBcCisrCQkJICJtYXkgYmUg ZGlzYWJsZWRcbiIKKysKKysjZGVmaW5lIFJIX0RJU0FCTEVEX0hXICJXYXJuaW5nOiBEaXNhYmxl ZCBIYXJkd2FyZSBpcyBkZXRlY3RlZDogJXM6JXMgaXMgIiBcCisrCQkgICAgICAgIm5vIGxvbmdl ciBlbmFibGVkIGluIHRoaXMgcmVsZWFzZS5cbiIKKysKKysjZGVmaW5lIFJIX1RFQ0hfUFJFVklF VyAiVEVDSCBQUkVWSUVXOiAlcyBtYXkgbm90IGJlIGZ1bGx5IHN1cHBvcnRlZC5cbiIgXAorKwkJ CSJQbGVhc2UgcmV2aWV3IHByb3ZpZGVkIGRvY3VtZW50YXRpb24gZm9yICIgXAorKwkJCSJsaW1p dGF0aW9ucy5cbiIKKysKKysjZGVmaW5lIFJIX1BBUlRORVJfU1VQUE9SVEVEICJXYXJuaW5nOiAl cyBpcyBhIFBhcnRuZXIgc3VwcG9ydGVkIEdQTCAiIFwKKysJCQkgICAgICJtb2R1bGUgYW5kIG5v dCBzdXBwb3J0ZWQgZGlyZWN0bHkgYnkgUmVkIEhhdC5cbiIKKysKKytzdGF0aWMgY29uc3QgY2hh ciAqcmhfZGVwcmVjYXRlZF9kcml2ZXJzW10gPSB7CisrCTAgICAgIC8qIFRlcm1pbmF0aW5nIGVu dHJ5ICovCisrfTsKKysKKytzdGF0aWMgY29uc3QgY2hhciAqcmhfZGVwcmVjYXRlZF9pbml0X2Zu c1tdID0geworKwkwICAgICAvKiBUZXJtaW5hdGluZyBlbnRyeSAqLworK307CisrCisrc3RhdGlj IGNvbnN0IGNoYXIgKnJoX3VubWFpbnRhaW5lZF9kcml2ZXJzW10gPSB7CisrCSJhYWNyYWlkIiwK KysJImFmX2tleSIsCisrCSJhaGNpX3NlYXR0bGUiLAorKwkiYWhjaV94Z2VuZSIsCisrCSJhcnBf dGFibGVzIiwKKysJImJueDIiLAorKwkiYm54MmZjIiwKKysJImJueDJpIiwKKysJImJueDJ4IiwK KysJImNuaWMiLAorKwkiZGwyayIsCisrCSJlMTAwMCIsCisrCSJlYnRhYmxlcyIsCisrCSJoZGxj X2ZyIiwKKysJImhpc2lfc2FzX21haW4iLAorKwkiaHBzYSIsCisrCSJpcDZfdGFibGVzIiwKKysJ ImlwX3NldCIsCisrCSJpcF90YWJsZXMiLAorKwkibXB0YmFzZSIsCisrCSJtcHRzYXMiLAorKwki bXB0c2NzaWgiLAorKwkibXB0c3BpIiwKKysJIm15cmkxMGdlIiwKKysJIm5ldHhlbl9uaWMiLAor KwkibmZ0X2NvbXBhdCIsCisrCSJuaWNwZiIsCisrCSJuaWN2ZiIsCisrCSJudm1ldF9mYyIsCisr CSJudm1ldF90Y3AiLAorKwkidGVhbSIsCisrCTAgICAgIC8qIFRlcm1pbmF0aW5nIGVudHJ5ICov CisrfTsKKysKKytzdGF0aWMgY29uc3QgY2hhciAqcmhfdW5tYWludGFpbmVkX2luaXRfZm5zW10g PSB7CisrCSJibngyX3BjaV9kcml2ZXJfaW5pdCIsCisrCSJlMTAwMF9pbml0X21vZHVsZSIsCisr CSJyaW9fZHJpdmVyX2luaXQiLAorKwkiaHBzYV9pbml0IiwKKysJImZ1c2lvbl9pbml0IiwKKysJ Im1wdHNhc19pbml0IiwKKysJImZ1c2lvbl9pbml0IiwKKysJIm1wdHNwaV9pbml0IiwKKysJIm15 cmkxMGdlX2luaXRfbW9kdWxlIiwKKysJIm5ldHhlbl9pbml0X21vZHVsZSIsCisrCSJoZGxjX2Zy X2luaXQiLAorKwkibnZtZXRfZmNfaW5pdF9tb2R1bGUiLAorKwkibnZtZXRfdGNwX2luaXQiLAor KwkidGVhbV9tb2R1bGVfaW5pdCIsCisrCSJlYnRhYmxlc19pbml0IiwKKysJImFycF90YWJsZXNf aW5pdCIsCisrCSJpcF90YWJsZXNfaW5pdCIsCisrCSJpcDZfdGFibGVzX2luaXQiLAorKwkiaXBf c2V0X2luaXQiLAorKwkibmZ0X2NvbXBhdF9tb2R1bGVfaW5pdCIsCisrCSJuaWN2Zl9pbml0X21v ZHVsZSIsCisrCSJuaWNfaW5pdF9tb2R1bGUiLAorKwkiaXBzZWNfcGZrZXlfaW5pdCIsCisrCSJh YWNfaW5pdCIsCisrCSJjbmljX2luaXQiLAorKwkiYm54MnhfaW5pdCIsCisrCSJibngyZmNfbW9k X2luaXQiLAorKwkiYm54MmlfbW9kX2luaXQiLAorKwkiYWhjaV9zZWF0dGxlX3Byb2JlIiwKKysJ InhnZW5lX2FoY2lfcHJvYmUiLAorKwkiaGlzaV9zYXNfaW5pdCIsCisrCTAgICAgIC8qIFRlcm1p bmF0aW5nIGVudHJ5ICovCisrfTsKKysKKytzdGF0aWMgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2Vf aWQgcmhfZGVwcmVjYXRlZF9wY2lfZGV2aWNlc1tdID0geworKwl7MH0gICAgIC8qIFRlcm1pbmF0 aW5nIGVudHJ5ICovCisrfTsKKysKKytzdGF0aWMgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQg cmhfZGlzYWJsZWRfcGNpX2RldmljZXNbXSA9IHsKKysJeyAweDEwMTEsIDB4MDA0NiwgMHgxMDNj LCAweDEwYzIgfSwKKysJeyAweDEwMTEsIDB4MDA0NiwgMHg5MDA1LCAweDAzNjQgfSwKKysJeyAw eDEwMTEsIDB4MDA0NiwgMHg5MDA1LCAweDAzNjUgfSwKKysJeyAweDEwMTEsIDB4MDA0NiwgMHg5 MDA1LCAweDEzNjQgfSwKKysJeyAweDEwMjgsIDB4MDAwMSwgMHgxMDI4LCAweDAwMDEgfSwKKysJ eyAweDEwMjgsIDB4MDAwMiwgMHgxMDI4LCAweDAwMDIgfSwKKysJeyAweDEwMjgsIDB4MDAwMiwg MHgxMDI4LCAweDAwZDEgfSwKKysJeyAweDEwMjgsIDB4MDAwMiwgMHgxMDI4LCAweDAwZDkgfSwK KysJeyAweDEwMjgsIDB4MDAwMywgMHgxMDI4LCAweDAwMDMgfSwKKysJeyAweDEwMjgsIDB4MDAw NCwgMHgxMDI4LCAweDAwZDAgfSwKKysJeyAweDEwMjgsIDB4MDAwYSwgMHgxMDI4LCAweDAxMDYg fSwKKysJeyAweDEwMjgsIDB4MDAwYSwgMHgxMDI4LCAweDAxMWIgfSwKKysJeyAweDEwMjgsIDB4 MDAwYSwgMHgxMDI4LCAweDAxMjEgfSwKKysJeyAweDkwMDUsIDB4MDIwMCwgMHg5MDA1LCAweDAy MDAgfSwKKysJeyAweDkwMDUsIDB4MDI4MywgMHg5MDA1LCAweDAyODMgfSwKKysJeyAweDkwMDUs IDB4MDI4NCwgMHg5MDA1LCAweDAyODQgfSwKKysJeyAweDkwMDUsIDB4MDI4NSwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCB9LAorKwl7IDB4OTAwNSwgMHgwMjg1LCAweDEwMTQsIDB4MDJGMiB9LAor Kwl7IDB4OTAwNSwgMHgwMjg1LCAweDEwMTQsIDB4MDMxMiB9LAorKwl7IDB4OTAwNSwgMHgwMjg1 LCAweDEwMjgsIFBDSV9BTllfSUQgfSwKKysJeyAweDkwMDUsIDB4MDI4NSwgMHgxMDI4LCAweDAy ODcgfSwKKysJeyAweDkwMDUsIDB4MDI4NSwgMHgxMDI4LCAweDAyOTEgfSwKKysJeyAweDkwMDUs IDB4MDI4NSwgMHgxMDNDLCAweDMyMjcgfSwKKysJeyAweDkwMDUsIDB4MDI4NSwgMHgxN2FhLCBQ Q0lfQU5ZX0lEIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4MTdhYSwgMHgwMjg2IH0sCisrCXsg MHg5MDA1LCAweDAyODUsIDB4MTdhYSwgMHgwMjg3IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4 OTAwNSwgMHgwMjg1IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjg2IH0sCisr CXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjg3IH0sCisrCXsgMHg5MDA1LCAweDAyODUs IDB4OTAwNSwgMHgwMjg4IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjg5IH0s CisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjhhIH0sCisrCXsgMHg5MDA1LCAweDAy ODUsIDB4OTAwNSwgMHgwMjhiIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjhl IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjhmIH0sCisrCXsgMHg5MDA1LCAw eDAyODUsIDB4OTAwNSwgMHgwMjkwIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgw MjkxIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjkyIH0sCisrCXsgMHg5MDA1 LCAweDAyODUsIDB4OTAwNSwgMHgwMjkzIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwg MHgwMjk0IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjk2IH0sCisrCXsgMHg5 MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjk3IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAw NSwgMHgwMjk4IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjk5IH0sCisrCXsg MHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMjlhIH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4 OTAwNSwgMHgwMmE0IH0sCisrCXsgMHg5MDA1LCAweDAyODUsIDB4OTAwNSwgMHgwMmE1IH0sCisr CXsgMHg5MDA1LCAweDAyODYsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDkwMDUs IDB4MDI4NiwgMHgxMDE0LCAweDk1NDAgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHgxMDE0LCAw eDk1ODAgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyOGMgfSwKKysJeyAweDkw MDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyOGQgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1 LCAweDAyOWIgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyOWMgfSwKKysJeyAw eDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyOWQgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5 MDA1LCAweDAyOWUgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyOWYgfSwKKysJ eyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyYTAgfSwKKysJeyAweDkwMDUsIDB4MDI4Niwg MHg5MDA1LCAweDAyYTEgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyYTIgfSwK KysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDAyYTMgfSwKKysJeyAweDkwMDUsIDB4MDI4 NiwgMHg5MDA1LCAweDAyYTYgfSwKKysJeyAweDkwMDUsIDB4MDI4NiwgMHg5MDA1LCAweDA4MDAg fSwKKysJeyAweDkwMDUsIDB4MDI4NywgMHg5MDA1LCAweDA4MDAgfSwKKysJeyAweDkwMDUsIDB4 MDI4OCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTlhMiwgMHgwMjIyLCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxOWEyLCAweDA3MTIsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKKysJeyAweDE5YTIsIDB4MjEyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s CisrCXsgMHgxOWEyLCAweDcwMiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTlh MiwgMHg3MDMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE5YTIsIDB4MDcwMCwg UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTlhMiwgMHgwMjExLCBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxOWEyLCAweDA3MTAsIFBDSV9BTllfSUQsIFBDSV9BTllf SUQgfSwKKysJeyAweDE5YTIsIDB4MDIyMSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7 IDB4MTlhMiwgMHhlMjIwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAw eDFhZTUsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZTEwMCwgUENJ X0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhlMTMxLCBQQ0lfQU5ZX0lELCBQ Q0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGUxODAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQg fSwKKysJeyAweDEwZGYsIDB4ZTI2MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4 MTBkZiwgMHhmMDk1LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGYw OTgsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZjBhMSwgUENJX0FO WV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmMGE1LCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGYwZDEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwK KysJeyAweDEwZGYsIDB4ZjBkNSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBk ZiwgMHhmMGUxLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGYwZTUs IFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZjBmNSwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmMGY2LCBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lEIH0sCisrCXsgMHgxMGRmLCAweGYwZjcsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJ eyAweDEwZGYsIDB4ZjE4MCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwg MHhmNzAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGY4MDAsIFBD SV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZjkwMCwgUENJX0FOWV9JRCwg UENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmOTgwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCisrCXsgMHgxMGRmLCAweGZhMDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAw eDEwZGYsIDB4ZmIwMCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhm YzAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGZjMTAsIFBDSV9B TllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZmMyMCwgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmYzUwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s CisrCXsgMHgxMGRmLCAweGZkMDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEw ZGYsIDB4ZmQxMSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmZDEy LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGZlMDAsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZmUwNSwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAorKwl7IDB4MTBkZiwgMHhmZTExLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisr CXsgMHgxMGRmLCAweGZlMTIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE5YTIs IDB4MDcwNCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTlhMiwgMHgwNzE0LCBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGUyMDgsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4ZTI2OCwgUENJX0FOWV9JRCwgUENJX0FOWV9J RCB9LAorKwl7IDB4MTAwMCwgMHgwMDYwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsg MHgxMDAwLCAweDAwNzgsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAsIDB4 MDA3QywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwNDExLCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDAwLCAweDA0MTMsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKKysJeyAweDEwMjgsIDB4MDAxNSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAorKwl7IDB4MTVCMywgMHgxMDAyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgx NUIzLCAweDYzNDAsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE1QjMsIDB4NjM0 QSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVCMywgMHg2MzU0LCBQQ0lfQU5Z X0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDYzNjgsIFBDSV9BTllfSUQsIFBDSV9B TllfSUQgfSwKKysJeyAweDE1QjMsIDB4NjM3MiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAor Kwl7IDB4MTVCMywgMHg2NzMyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIz LCAweDY3M0MsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE1QjMsIDB4Njc0Niwg UENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVCMywgMHg2NzUwLCBQQ0lfQU5ZX0lE LCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDY3NUEsIFBDSV9BTllfSUQsIFBDSV9BTllf SUQgfSwKKysJeyAweDE1QjMsIDB4Njc2NCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7 IDB4MTVCMywgMHg2NzZFLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAw eDEwMDMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE1QjMsIDB4MTAwNCwgUENJ X0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVCMywgMHgxMDA1LCBQQ0lfQU5ZX0lELCBQ Q0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDEwMDYsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQg fSwKKysJeyAweDE1QjMsIDB4MTAwNywgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4 MTVCMywgMHgxMDA4LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDEw MDksIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE1QjMsIDB4MTAwYSwgUENJX0FO WV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVCMywgMHgxMDBiLCBQQ0lfQU5ZX0lELCBQQ0lf QU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDEwMGMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwK KysJeyAweDE1QjMsIDB4MTAwZCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVC MywgMHgxMDBlLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxNUIzLCAweDEwMGYs IFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE1QjMsIDB4MTAxMCwgUENJX0FOWV9J RCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTVCMywgMHgxMDI3LCBQQ0lfQU5ZX0lELCBQQ0lfQU5Z X0lEIH0sCisrCXsgMHgxMDAwLCAweDAwNjQsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJ eyAweDEwMDAsIDB4MDA2NSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTAwMCwg MHgwMDcwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDAwLCAweDAwNzIsIFBD SV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAsIDB4MDA3NCwgUENJX0FOWV9JRCwg UENJX0FOWV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwMDc2LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCisrCXsgMHgxMDAwLCAweDAwNzcsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAw eDEwMDAsIDB4MDA3RSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTA3NywgMHgy NDIyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDc3LCAweDI0MzIsIFBDSV9B TllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwNzcsIDB4NTQyMiwgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAorKwl7IDB4MTA3NywgMHg1NDMyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s CisrCXsgMHgxMDc3LCAweDgwMDEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEw NzcsIDB4ODAyMSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTA3NywgMHg4MDQ0 LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDc3LCAweDg0MzIsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwNzcsIDB4RjAwMCwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAorKwl7IDB4MTA3NywgMHg4MDIyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisr CXsgMHgxMDc3LCAweDgwMzIsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwNzcs IDB4ODA0MiwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7MH0gICAgIC8qIFRlcm1pbmF0 aW5nIGVudHJ5ICovCisrfTsKKysKKytzdGF0aWMgY29uc3Qgc3RydWN0IHBjaV9kZXZpY2VfaWQg cmhfdW5tYWludGFpbmVkX3BjaV9kZXZpY2VzW10gPSB7CisrCXsgMHgxMGRmLCAweGUyMjAsIFBD SV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwZGYsIDB4MDcyNCwgUENJX0FOWV9JRCwg UENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhlMjAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lE IH0sCisrCXsgMHgxMGRmLCAweGYwMTEsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAw eDEwZGYsIDB4ZjAxNSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTBkZiwgMHhm MTAwLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMGRmLCAweGZjNDAsIFBDSV9B TllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAsIDB4MDA1YiwgUENJX0FOWV9JRCwgUENJ X0FOWV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwMDcxLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0s CisrCXsgMHgxMDAwLCAweDAwNzMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEw MDAsIDB4MDA3OSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwMDZF LCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDAwLCAweDAwODAsIFBDSV9BTllf SUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAsIDB4MDA4MSwgUENJX0FOWV9JRCwgUENJX0FO WV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwMDgyLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisr CXsgMHgxMDAwLCAweDAwODMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAs IDB4MDA4NCwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTAwMCwgMHgwMDg1LCBQ Q0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDAwLCAweDAwODYsIFBDSV9BTllfSUQs IFBDSV9BTllfSUQgfSwKKysJeyAweDEwMDAsIDB4MDA4NywgUENJX0FOWV9JRCwgUENJX0FOWV9J RCB9LAorKwl7IDB4MTc3ZCwgMHhhMDFlLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsg MHgxNzdkLCAweGEwMzQsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJeyAweDE3N2QsIDB4 MDAxMSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9LAorKwl7IDB4MTA3NywgMHgyMDMxLCBQQ0lf QU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgxMDc3LCAweDI1MzIsIFBDSV9BTllfSUQsIFBD SV9BTllfSUQgfSwKKysJeyAweDEwNzcsIDB4ODAzMSwgUENJX0FOWV9JRCwgUENJX0FOWV9JRCB9 LAorKwl7IDB4MTkyNCwgMHgwODAzLCBQQ0lfQU5ZX0lELCBQQ0lfQU5ZX0lEIH0sCisrCXsgMHgx OTI0LCAweDA4MTMsIFBDSV9BTllfSUQsIFBDSV9BTllfSUQgfSwKKysJezB9ICAgICAvKiBUZXJt aW5hdGluZyBlbnRyeSAqLworK307CisrCisrI2VuZGlmIC8qIF9fUkhfTUVTU0FHRVNfSCAqLwor ZGlmZiAtLWdpdCBhL2tlcm5lbC9yaF93YWl2ZWQuYyBiL2tlcm5lbC9yaF93YWl2ZWQuYworbmV3 IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwMDAwMC4uMjA5NjZmN2M3Mjc3CistLS0g L2Rldi9udWxsCisrKysgYi9rZXJuZWwvcmhfd2FpdmVkLmMKK0BAIC0wLDAgKzEsMTQ3IEBACisr LyogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAgKi8KKysvKgorKyAqIGtlcm5lbC9y aF93YWl2ZWQuYworKyAqCisrICogcmhfd2FpdmVkIGNtZGxpbmUgcGFyYW1ldGVyIHN1cHBvcnQu CisrICoKKysgKiBDb3B5cmlnaHQgKEMpIDIwMjQsIFJlZCBIYXQsIEluYy4gIFJpY2FyZG8gUm9i YWluYSA8cnJvYmFpbmFAcmVkaGF0LmNvbT4KKysgKi8KKysjaW5jbHVkZSA8bGludXgvdHlwZXMu aD4KKysjaW5jbHVkZSA8bGludXgvaW5pdC5oPgorKyNpbmNsdWRlIDxsaW51eC9wcmludGsuaD4K KysjaW5jbHVkZSA8bGludXgvc3RyaW5nLmg+CisrI2luY2x1ZGUgPGxpbnV4L3BhbmljLmg+Cisr I2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgorKyNpbmNsdWRlIDxsaW51eC9rZXJuZWwuaD4KKysj aW5jbHVkZSA8bGludXgvcmhfZmxhZ3MuaD4KKysjaW5jbHVkZSA8bGludXgvcmhfd2FpdmVkLmg+ CisrCisrLyoKKysgKiAqIFJIX0lOU0VSVF9XQUlWRURfSVRFTQorKyAqICAgVGhpcyBtYWNybyBp cyBpbnRlbmRlZCB0byBiZSB1c2VkIHRvIGluc2VydCBpdGVtcyBpbnRvIHRoZQorKyAqICAgcmhf d2FpdmVkX2xpc3QgYXJyYXkuIEl0IGV4cGVjdHMgdG8gZ2V0IGFuIGl0ZW0gZnJvbQorKyAqICAg ZW51bSByaF93YWl2ZWRfaXRlbXMgYXMgaXRzIGZpcnN0IGFyZ3VtZW50LCBhbmQgYSBzdHJpbmcK KysgKiAgIGhvbGRpbmcgdGhlIGZlYXR1cmUgbmFtZSBhcyBpdHMgc2Vjb25kIGFyZ3VtZW50Lgor KyAqCisrICogICBUaGUgZmVhdHVyZSBuYW1lIGlzIGFsc28gdXRpbGl6ZWQgYXMgdGhlIHRva2Vu IGZvciB0aGUKKysgKiAgIGJvb3QgcGFyYW1ldGVyIHBhcnNlci4KKysgKgorKyAqICAgRXhhbXBs ZSB1c2FnZToKKysgKiAgIHN0cnVjdCByaF93YWl2ZWRfaXRlbSBmb29bUkhfV0FJVkVEX0ZFQVRf SVRFTVNdID0geworKyAqICAgICBSSF9JTlNFUlRfV0FJVkVEX0lURU0oRk9PX0ZFQVQsICJmb29f ZmVhdF9zaG9ydF9zdHIiLCAiYWxpYXMiLCBSSF9XQUlWRURfRkVBVCksCisrICogICB9OworKyAq LworKyNkZWZpbmUgUkhfSU5TRVJUX1dBSVZFRF9JVEVNKGVudW1faXRlbSwgaXRlbSwgaXRlbV9h bHQsIGNsYXNzKSAgICAgICAgICAgICAgICBcCisrICAgICAgIFsoZW51bV9pdGVtKV0gPSB7IC5u YW1lID0gKGl0ZW0pLCAuYWxpYXMgPSAoaXRlbV9hbHQpLCAgICAgICAgICBcCisrICAgICAgICAg ICAgICAgICAgICAgICAgIC50eXBlID0gKGNsYXNzKSwgLndhaXZlZCA9IDAsIH0KKysKKysvKiBJ bmRpY2F0ZXMgaWYgdGhlIHJoX2ZsYWcgJ3JoX3dhaXZlZCcgc2hvdWxkIGJlIGFkZGVkLiAqLwor K2Jvb2wgX19pbml0ZGF0YSBhZGRfcmhfZmxhZyA9IGZhbHNlOworKworK3R5cGVkZWYgZW51bSB7 CisrICAgICAgIFJIX1dBSVZFRF9GRUFULAorKyAgICAgICBSSF9XQUlWRURfQ1ZFLAorKyAgICAg ICBSSF9XQUlWRURfQU5ZCisrfSByaF93YWl2ZWRfdDsKKysKKytzdHJ1Y3Qgcmhfd2FpdmVkX2l0 ZW0geworKyAgICAgICBjaGFyICpuYW1lLCAqYWxpYXM7CisrICAgICAgIHJoX3dhaXZlZF90IHR5 cGU7CisrICAgICAgIHVuc2lnbmVkIGludCB3YWl2ZWQ7CisrCisrfTsKKysKKysvKiBBbHdheXMg dXNlIHRoZSBtYXJjbyBSSF9JTlNFUlRfV0FJVkVEIHRvIGluc2VydCBpdGVtcyB0byB0aGlzIGFy cmF5LiAqLworK3N0cnVjdCByaF93YWl2ZWRfaXRlbSByaF93YWl2ZWRfbGlzdFtSSF9XQUlWRURf SVRFTVNdID0geworK307CisrCisrLyoKKysgKiBpc19yaF93YWl2ZWQoKSAtIENoZWNrcyBpZiBh IGdpdmVuIGl0ZW0gaGFzIGJlZW4gbWFya2VkIGFzIHdhaXZlZC4KKysgKgorKyAqIEBpdGVtOiB3 YWl2ZWQgaXRlbS4KKysgKi8KKytfX2lubGluZV9fIGJvb2wgaXNfcmhfd2FpdmVkKGVudW0gcmhf d2FpdmVkX2l0ZW1zIGl0ZW0pCisreworKwlyZXR1cm4gISFyaF93YWl2ZWRfbGlzdFtpdGVtXS53 YWl2ZWQ7CisrfQorK0VYUE9SVF9TWU1CT0woaXNfcmhfd2FpdmVkKTsKKysKKytzdGF0aWMgdm9p ZCBfX2luaXQgcmhfd2FpdmVkX3BhcnNlcihjaGFyICpzLCByaF93YWl2ZWRfdCB0eXBlKQorK3sK KysJaW50IGk7CisrCWNoYXIgKnRva2VuOworKworKwlwcl9pbmZvKEtFUk5fQ09OVCAicmhfd2Fp dmVkOiAiKTsKKysKKysJaWYgKCFzKSB7CisrCQlmb3IgKGkgPSAwOyBpIDwgUkhfV0FJVkVEX0lU RU1TOyBpKyspIHsKKysJCQlpZiAodHlwZSAhPSBSSF9XQUlWRURfQU5ZICYmIHJoX3dhaXZlZF9s aXN0W2ldLnR5cGUgIT0gdHlwZSkKKysJCQkJY29udGludWU7CisrCisrCQkJcmhfd2FpdmVkX2xp c3RbaV0ud2FpdmVkID0gMTsKKysJCQlwcl9pbmZvKEtFUk5fQ09OVCAiJXMlcyIsIHJoX3dhaXZl ZF9saXN0W2ldLm5hbWUsCisrCQkJCWkgPCBSSF9XQUlWRURfSVRFTVMgLSAxID8gIiAiIDogIlxu Iik7CisrCQl9CisrCisrCQlhZGRfcmhfZmxhZyA9IHRydWU7CisrCQlyZXR1cm47CisrCX0KKysK KysJd2hpbGUgKCh0b2tlbiA9IHN0cnNlcCgmcywgIiwiKSkgIT0gTlVMTCkgeworKwkJZm9yIChp ID0gMDsgaSA8IFJIX1dBSVZFRF9JVEVNUzsgaSsrKSB7CisrCQkJY2hhciAqYWxpYXMgPSByaF93 YWl2ZWRfbGlzdFtpXS5hbGlhczsKKysKKysJCQlpZiAodHlwZSAhPSBSSF9XQUlWRURfQU5ZICYm IHJoX3dhaXZlZF9saXN0W2ldLnR5cGUgIT0gdHlwZSkKKysJCQkJY29udGludWU7CisrCisrCQkJ aWYgKCFzdHJjbXAodG9rZW4sIHJoX3dhaXZlZF9saXN0W2ldLm5hbWUpIHx8CisrCQkJICAgIChh bGlhcyAmJiAhc3RyY21wKHRva2VuLCBhbGlhcykpKSB7CisrCQkJCXJoX3dhaXZlZF9saXN0W2ld LndhaXZlZCA9IDE7CisrCQkJCXByX2luZm8oS0VSTl9DT05UICIlcyAiLCByaF93YWl2ZWRfbGlz dFtpXS5uYW1lKTsKKysJCQl9CisrCQl9CisrCX0KKysKKysJcHJfaW5mbyhLRVJOX0NPTlQgIlxu Iik7CisrCWFkZF9yaF9mbGFnID0gdHJ1ZTsKKyt9CisrCisrc3RhdGljIGludCBfX2luaXQgcmhf d2FpdmVkX3NldHVwKGNoYXIgKnMpCisreworKwkvKgorKwkgKiBvcmlnaW5hbGx5LCBpZiBubyBz dHJpbmcgd2FzIHBhc3NlZCB0byB0aGUgY21kbGluZSBvcHRpb24KKysJICogYWxsIGxpc3RlZCBm ZWF0dXJlcyB3b3VsZCBiZSB3YWl2ZWQsIHNvIHdlIGtlZXAgdGhhdCBzYW1lCisrCSAqIGNvbXBy b21pc2Ugd2l0aCB0aGUgbmV3IGNvbnRyYWN0LgorKwkgKi8KKysJaWYgKCFzIHx8ICFzdHJjbXAo cywgImZlYXR1cmVzIikpIHsKKysJCXJoX3dhaXZlZF9wYXJzZXIoTlVMTCwgUkhfV0FJVkVEX0ZF QVQpOworKwkJcmV0dXJuIDA7CisrCX0KKysKKysJLyogd2FpdmUgYWxsIHBvc3NpYmxlIG1pdGln YXRpb25zIGluIHRoZSBsaXN0ICovCisrCWlmICghc3RyY21wKHMsICJjdmVzIikpIHsKKysJCXJo X3dhaXZlZF9wYXJzZXIoTlVMTCwgUkhfV0FJVkVEX0NWRSk7CisrCQlyZXR1cm4gMDsKKysJfQor KworKwkvKiBvdGhlcndpc2UsIGp1c3QgZGVhbCB3aXRoIHRoZSBlbnVtZXJhdGVkIHdhaXZlIGxp c3QgKi8KKysJcmhfd2FpdmVkX3BhcnNlcihzLCBSSF9XQUlWRURfQU5ZKTsKKysKKysJcmV0dXJu IDA7CisrfQorK2Vhcmx5X3BhcmFtKCJyaF93YWl2ZWQiLCByaF93YWl2ZWRfc2V0dXApOworKwor Ky8qCisrICogcmhfZmxhZ3MgaXMgaW5pdGlhbGl6ZWQgYXQgc3Vic3lzX2luaXRjYWxsLCBjYWxs aW5nIHJoX2FkZF9mbGFnKCkKKysgKiBmcm9tIHJoX3dhaXZlZF9zZXR1cCgpIHdvdWxkIHJlc3Vs dCBpbiBhIGNhbid0IGJvb3Qgc2l0dWF0aW9uLgorKyAqIERlZmZlcmluZyB0aGUgaW5jbHVzaW9u ICdyaF93YWl2ZWQnIHJoX2ZsYWcgdG8gbGF0ZV9pbml0Y2FsbCB0bworKyAqIGF2b2lkIHRoaXMg aXNzdWUuCisrICovCisrc3RhdGljIGludCBfX2luaXQgX19hZGRfcmhfZmxhZyh2b2lkKQorK3sK KysJaWYgKGFkZF9yaF9mbGFnKQorKwkJcmhfYWRkX2ZsYWcoInJoX3dhaXZlZCIpOworKworKwly ZXR1cm4gMDsKKyt9CisrbGF0ZV9pbml0Y2FsbChfX2FkZF9yaF9mbGFnKTsKK2RpZmYgLS1naXQg YS9zY3JpcHRzL01ha2VmaWxlLmxpYiBiL3NjcmlwdHMvTWFrZWZpbGUubGliCitpbmRleCAwYTRm ZGQ4YmQ5NzUuLmRjYjEyZGFkNDE5ZiAxMDA2NDQKKy0tLSBhL3NjcmlwdHMvTWFrZWZpbGUubGli CisrKysgYi9zY3JpcHRzL01ha2VmaWxlLmxpYgorQEAgLTIwNyw3ICsyMDcsMTAgQEAgb2JqdG9v bC1hcmdzLSQoQ09ORklHX1NUQUNLX1ZBTElEQVRJT04pCQkJKz0gLS1zdGFja3ZhbAorIG9ianRv b2wtYXJncy0kKENPTkZJR19IQVZFX1NUQVRJQ19DQUxMX0lOTElORSkJCSs9IC0tc3RhdGljLWNh bGwKKyBvYmp0b29sLWFyZ3MtJChDT05GSUdfSEFWRV9VQUNDRVNTX1ZBTElEQVRJT04pCQkrPSAt LXVhY2Nlc3MKKyBvYmp0b29sLWFyZ3MtJChvciAkKENPTkZJR19HQ09WX0tFUk5FTCksJChDT05G SUdfS0NPVikpCSs9IC0tbm8tdW5yZWFjaGFibGUKKysjIFJIRUwtb25seTogZG9uJ3QgZW5mb3Jj ZSBPQkpUT09MX1dFUlJPUiBmb3Igb3V0IG9mIHRyZWUgbW9kdWxlcworK2lmZXEgKCQoS0JVSUxE X0VYVE1PRCksKQorIG9ianRvb2wtYXJncy0kKENPTkZJR19PQkpUT09MX1dFUlJPUikJCQkrPSAt LXdlcnJvcgorK2VuZGlmCisgCisgb2JqdG9vbC1hcmdzID0gJChvYmp0b29sLWFyZ3MteSkJCQkJ CVwKKyAJJChpZiAkKGRlbGF5LW9ianRvb2wpLCAtLWxpbmspCQkJCQlcCitkaWZmIC0tZ2l0IGEv c2NyaXB0cy9tb2QvbW9kcG9zdC5jIGIvc2NyaXB0cy9tb2QvbW9kcG9zdC5jCitpbmRleCBhN2I3 MmE4MWQyNDguLjliNjJlZTA3ODczNCAxMDA2NDQKKy0tLSBhL3NjcmlwdHMvbW9kL21vZHBvc3Qu YworKysrIGIvc2NyaXB0cy9tb2QvbW9kcG9zdC5jCitAQCAtMjcsNiArMjcsNyBAQAorICNpbmNs dWRlIDx4YWxsb2MuaD4KKyAjaW5jbHVkZSAibW9kcG9zdC5oIgorICNpbmNsdWRlICIuLi8uLi9p bmNsdWRlL2xpbnV4L2xpY2Vuc2UuaCIKKysjaW5jbHVkZSAiLi4vLi4vaW5jbHVkZS9nZW5lcmF0 ZWQvdWFwaS9saW51eC92ZXJzaW9uLmgiCisgCisgI2RlZmluZSBNT0RVTEVfTlNfUFJFRklYICJt b2R1bGU6IgorIAorQEAgLTIwNjYsNiArMjA2NywxMiBAQCBzdGF0aWMgdm9pZCB3cml0ZV9idWYo c3RydWN0IGJ1ZmZlciAqYiwgY29uc3QgY2hhciAqZm5hbWUpCisgCX0KKyB9CisgCisrc3RhdGlj IHZvaWQgYWRkX3JoZWx2ZXJzaW9uKHN0cnVjdCBidWZmZXIgKmIsIHN0cnVjdCBtb2R1bGUgKm1v ZCkKKyt7CisrCWJ1Zl9wcmludGYoYiwgIk1PRFVMRV9JTkZPKHJoZWx2ZXJzaW9uLCBcIiVkLiVk XCIpO1xuIiwgUkhFTF9NQUpPUiwKKysJCSAgIFJIRUxfTUlOT1IpOworK30KKysKKyBzdGF0aWMg dm9pZCB3cml0ZV9pZl9jaGFuZ2VkKHN0cnVjdCBidWZmZXIgKmIsIGNvbnN0IGNoYXIgKmZuYW1l KQorIHsKKyAJY2hhciAqdG1wOworQEAgLTIxNTAsNiArMjE1Nyw3IEBAIHN0YXRpYyB2b2lkIHdy aXRlX21vZF9jX2ZpbGUoc3RydWN0IG1vZHVsZSAqbW9kKQorIAl9CisgCisgCWFkZF9zcmN2ZXJz aW9uKCZidWYsIG1vZCk7CisrCWFkZF9yaGVsdmVyc2lvbigmYnVmLCBtb2QpOworIAorIAlyZXQg PSBzbnByaW50ZihmbmFtZSwgc2l6ZW9mKGZuYW1lKSwgIiVzLm1vZC5jIiwgbW9kLT5uYW1lKTsK KyAJaWYgKHJldCA+PSBzaXplb2YoZm5hbWUpKSB7CitkaWZmIC0tZ2l0IGEvc2NyaXB0cy90YWdz LnNoIGIvc2NyaXB0cy90YWdzLnNoCitpbmRleCAyNDMzNzM2ODNmOTguLjJhZmZkNWU1OGVlOCAx MDA3NTUKKy0tLSBhL3NjcmlwdHMvdGFncy5zaAorKysrIGIvc2NyaXB0cy90YWdzLnNoCitAQCAt MTYsNiArMTYsOCBAQCBmaQorIGlnbm9yZT0iJChlY2hvICIkUkNTX0ZJTkRfSUdOT1JFIiB8IHNl ZCAnc3xcXHx8ZycgKSIKKyAjIHRhZ3MgYW5kIGNzY29wZSBmaWxlcyBzaG91bGQgYWxzbyBpZ25v cmUgTU9EVkVSU0lPTiAqLm1vZC5jIGZpbGVzCisgaWdub3JlPSIkaWdub3JlICggLW5hbWUgKi5t b2QuYyApIC1wcnVuZSAtbyIKKysjIFJIRUwgdGFncyBhbmQgY3Njb3BlIHNob3VsZCBhbHNvIGln bm9yZSByZWRoYXQvcnBtCisraWdub3JlPSIkaWdub3JlICggLXBhdGggcmVkaGF0L3JwbSApIC1w cnVuZSAtbyIKKyAKKyAjIGlnbm9yZSBhcmJpdHJhcnkgZGlyZWN0b3JpZXMKKyBpZiBbIC1uICIk e0lHTk9SRV9ESVJTfSIgXTsgdGhlbgorZGlmZiAtLWdpdCBhL3NlY3VyaXR5L2ludGVncml0eS9w bGF0Zm9ybV9jZXJ0cy9sb2FkX3VlZmkuYyBiL3NlY3VyaXR5L2ludGVncml0eS9wbGF0Zm9ybV9j ZXJ0cy9sb2FkX3VlZmkuYworaW5kZXggYzBkNjk0ODQ0NmMzLi5iZWQ1NjUzMmUyMDYgMTAwNjQ0 CistLS0gYS9zZWN1cml0eS9pbnRlZ3JpdHkvcGxhdGZvcm1fY2VydHMvbG9hZF91ZWZpLmMKKysr KyBiL3NlY3VyaXR5L2ludGVncml0eS9wbGF0Zm9ybV9jZXJ0cy9sb2FkX3VlZmkuYworQEAgLTc0 LDcgKzc0LDggQEAgc3RhdGljIF9faW5pdCB2b2lkICpnZXRfY2VydF9saXN0KGVmaV9jaGFyMTZf dCAqbmFtZSwgZWZpX2d1aWRfdCAqZ3VpZCwKKyAJCXJldHVybiBOVUxMOworIAorIAlpZiAoKnN0 YXR1cyAhPSBFRklfQlVGRkVSX1RPT19TTUFMTCkgeworLQkJcHJfZXJyKCJDb3VsZG4ndCBnZXQg c2l6ZTogMHglbHhcbiIsICpzdGF0dXMpOworKwkJcHJfZXJyKCJDb3VsZG4ndCBnZXQgc2l6ZTog JXMgKDB4JWx4KVxuIiwKKysJCSAgICAgICBlZmlfc3RhdHVzX3RvX3N0cigqc3RhdHVzKSwgKnN0 YXR1cyk7CisgCQlyZXR1cm4gTlVMTDsKKyAJfQorIAorQEAgLTg1LDcgKzg2LDggQEAgc3RhdGlj IF9faW5pdCB2b2lkICpnZXRfY2VydF9saXN0KGVmaV9jaGFyMTZfdCAqbmFtZSwgZWZpX2d1aWRf dCAqZ3VpZCwKKyAJKnN0YXR1cyA9IGVmaS5nZXRfdmFyaWFibGUobmFtZSwgZ3VpZCwgTlVMTCwg JmxzaXplLCBkYik7CisgCWlmICgqc3RhdHVzICE9IEVGSV9TVUNDRVNTKSB7CisgCQlrZnJlZShk Yik7CistCQlwcl9lcnIoIkVycm9yIHJlYWRpbmcgZGIgdmFyOiAweCVseFxuIiwgKnN0YXR1cyk7 CisrCQlwcl9lcnIoIkVycm9yIHJlYWRpbmcgZGIgdmFyOiAlcyAoMHglbHgpXG4iLAorKwkJICAg ICAgIGVmaV9zdGF0dXNfdG9fc3RyKCpzdGF0dXMpLCAqc3RhdHVzKTsKKyAJCXJldHVybiBOVUxM OworIAl9CisgCitkaWZmIC0tZ2l0IGEvc2VjdXJpdHkvbG9ja2Rvd24vS2NvbmZpZyBiL3NlY3Vy aXR5L2xvY2tkb3duL0tjb25maWcKK2luZGV4IGU4NGRkZjQ4NDAxMC4uZDA1MDEzNTNhNGI5IDEw MDY0NAorLS0tIGEvc2VjdXJpdHkvbG9ja2Rvd24vS2NvbmZpZworKysrIGIvc2VjdXJpdHkvbG9j a2Rvd24vS2NvbmZpZworQEAgLTE2LDYgKzE2LDE5IEBAIGNvbmZpZyBTRUNVUklUWV9MT0NLRE9X Tl9MU01fRUFSTFkKKyAJICBzdWJzeXN0ZW0gaXMgZnVsbHkgaW5pdGlhbGlzZWQuIElmIGVuYWJs ZWQsIGxvY2tkb3duIHdpbGwKKyAJICB1bmNvbmRpdGlvbmFsbHkgYmUgY2FsbGVkIGJlZm9yZSBh bnkgb3RoZXIgTFNNcy4KKyAKKytjb25maWcgTE9DS19ET1dOX0lOX0VGSV9TRUNVUkVfQk9PVAor Kwlib29sICJMb2NrIGRvd24gdGhlIGtlcm5lbCBpbiBFRkkgU2VjdXJlIEJvb3QgbW9kZSIKKysJ ZGVmYXVsdCBuCisrCWRlcGVuZHMgb24gRUZJICYmIFNFQ1VSSVRZX0xPQ0tET1dOX0xTTV9FQVJM WQorKwloZWxwCisrCSAgVUVGSSBTZWN1cmUgQm9vdCBwcm92aWRlcyBhIG1lY2hhbmlzbSBmb3Ig ZW5zdXJpbmcgdGhhdCB0aGUgZmlybXdhcmUKKysJICB3aWxsIG9ubHkgbG9hZCBzaWduZWQgYm9v dGxvYWRlcnMgYW5kIGtlcm5lbHMuICBTZWN1cmUgYm9vdCBtb2RlIG1heQorKwkgIGJlIGRldGVy bWluZWQgZnJvbSBFRkkgdmFyaWFibGVzIHByb3ZpZGVkIGJ5IHRoZSBzeXN0ZW0gZmlybXdhcmUg aWYKKysJICBub3QgaW5kaWNhdGVkIGJ5IHRoZSBib290IHBhcmFtZXRlcnMuCisrCisrCSAgRW5h YmxpbmcgdGhpcyBvcHRpb24gcmVzdWx0cyBpbiBrZXJuZWwgbG9ja2Rvd24gYmVpbmcgdHJpZ2dl cmVkIGlmCisrCSAgRUZJIFNlY3VyZSBCb290IGlzIHNldC4KKysKKyBjaG9pY2UKKyAJcHJvbXB0 ICJLZXJuZWwgZGVmYXVsdCBsb2NrZG93biBtb2RlIgorIAlkZWZhdWx0IExPQ0tfRE9XTl9LRVJO RUxfRk9SQ0VfTk9ORQorZGlmZiAtLWdpdCBhL3NlY3VyaXR5L2xvY2tkb3duL2xvY2tkb3duLmMg Yi9zZWN1cml0eS9sb2NrZG93bi9sb2NrZG93bi5jCitpbmRleCA4ZDQ2ODg2ZDJjY2EuLjE0YTlj ZGZmOTQyYiAxMDA2NDQKKy0tLSBhL3NlY3VyaXR5L2xvY2tkb3duL2xvY2tkb3duLmMKKysrKyBi L3NlY3VyaXR5L2xvY2tkb3duL2xvY2tkb3duLmMKK0BAIC03Miw2ICs3MiwxNyBAQCBzdGF0aWMg aW50IGxvY2tkb3duX2lzX2xvY2tlZF9kb3duKGVudW0gbG9ja2Rvd25fcmVhc29uIHdoYXQpCisg CXJldHVybiAwOworIH0KKyAKKysvKioKKysgKiBzZWN1cml0eV9sb2NrX2tlcm5lbF9kb3duKCkg LSBQdXQgdGhlIGtlcm5lbCBpbnRvIGxvY2stZG93biBtb2RlLgorKyAqCisrICogQHdoZXJlOiBX aGVyZSB0aGUgbG9jay1kb3duIGlzIG9yaWdpbmF0aW5nIGZyb20gKGUuZy4gY29tbWFuZCBsaW5l IG9wdGlvbikKKysgKiBAbGV2ZWw6IFRoZSBsb2NrLWRvd24gbGV2ZWwgKGNhbiBvbmx5IGluY3Jl YXNlKQorKyAqLworK2ludCBzZWN1cml0eV9sb2NrX2tlcm5lbF9kb3duKGNvbnN0IGNoYXIgKndo ZXJlLCBlbnVtIGxvY2tkb3duX3JlYXNvbiBsZXZlbCkKKyt7CisrCXJldHVybiBsb2NrX2tlcm5l bF9kb3duKHdoZXJlLCBsZXZlbCk7CisrfQorKworIHN0YXRpYyBzdHJ1Y3Qgc2VjdXJpdHlfaG9v a19saXN0IGxvY2tkb3duX2hvb2tzW10gX19yb19hZnRlcl9pbml0ID0geworIAlMU01fSE9PS19J TklUKGxvY2tlZF9kb3duLCBsb2NrZG93bl9pc19sb2NrZWRfZG93biksCisgfTsKK2RpZmYgLS1n aXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvREVOWUxJU1QucmhlbCBiL3Rvb2xzL3Rl c3Rpbmcvc2VsZnRlc3RzL2JwZi9ERU5ZTElTVC5yaGVsCituZXcgZmlsZSBtb2RlIDEwMDY0NAor aW5kZXggMDAwMDAwMDAwMDAwLi45NDI0YTgzYzZmNDgKKy0tLSAvZGV2L251bGwKKysrKyBiL3Rv b2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9ERU5ZTElTVC5yaGVsCitAQCAtMCwwICsxLDc2IEBA CisrIyBUZXN0cyB0aGF0IG5lZWQgQ09ORklHX0ZVTkNUSU9OX0VSUk9SX0lOSkVDVElPTgorKyMg VHlwaWNhbCBvYnNlcnZlZCBlcnJvcnMgYXJlOgorKyMgICAgIDwuLi5zb21lIGZ1bmN0aW9uLi4u PiBpcyBub3Qgc2xlZXBhYmxlCisrIyAgICAgPC4uLnNvbWUgZnVuY3Rpb24uLi4+IGlzIG5vdCBt b2RpZmlhYmxlCisrY2dycF9sb2NhbF9zdG9yYWdlL3llc19yY3VfbG9jaworK2NncnBfbG9jYWxf c3RvcmFnZS9ub19yY3VfbG9jaworK2NncnBfbG9jYWxfc3RvcmFnZS9jZ3JwMV95ZXNfcmN1X2xv Y2sKKytjZ3JwX2xvY2FsX3N0b3JhZ2UvY2dycDFfbm9fcmN1X2xvY2sKKytjb21wdXRlX2xpdmVf cmVnaXN0ZXJzL2FkZHJfc3BhY2VfY2FzdAorK2R5bnB0ci90ZXN0X3JlYWRfd3JpdGUKKytkeW5w dHIvdGVzdF9keW5wdHJfZGF0YQorK2R5bnB0ci90ZXN0X2R5bnB0cl9jb3B5CisrZHlucHRyL3Rl c3RfZHlucHRyX2NvcHlfeGRwCisrZHlucHRyL3Rlc3RfZHlucHRyX21lbXNldF96ZXJvCisrZHlu cHRyL3Rlc3RfZHlucHRyX21lbXNldF9ub3R6ZXJvCisrZHlucHRyL3Rlc3RfZHlucHRyX21lbXNl dF96ZXJvX29mZnNldAorK2R5bnB0ci90ZXN0X2R5bnB0cl9tZW1zZXRfemVyb19hZGp1c3RlZAor K2R5bnB0ci90ZXN0X2R5bnB0cl9tZW1zZXRfb3ZlcmZsb3cKKytkeW5wdHIvdGVzdF9keW5wdHJf bWVtc2V0X292ZXJmbG93X29mZnNldAorK2R5bnB0ci90ZXN0X2R5bnB0cl9tZW1zZXRfcmVhZG9u bHkKKytkeW5wdHIvdGVzdF9keW5wdHJfbWVtc2V0X3hkcF9jaHVua3MKKytkeW5wdHIvdGVzdF9k eW5wdHJfc2tiX21ldGFfZGF0YQorK2R5bnB0ci90ZXN0X2R5bnB0cl9za2JfbWV0YV9mbGFncwor K2R5bnB0ci90ZXN0X3JpbmdidWYKKytkeW5wdHIvdGVzdF9za2JfcmVhZG9ubHkKKytkeW5wdHIv dGVzdF9keW5wdHJfc2tiX2RhdGEKKytkeW5wdHIvdGVzdF9hZGp1c3QKKytkeW5wdHIvdGVzdF9h ZGp1c3RfZXJyCisrZHlucHRyL3Rlc3RfemVyb19zaXplX2R5bnB0cgorK2R5bnB0ci90ZXN0X2R5 bnB0cl9pc19udWxsCisrZHlucHRyL3Rlc3RfZHlucHRyX2lzX3Jkb25seQorK2R5bnB0ci90ZXN0 X2R5bnB0cl9jbG9uZQorK2R5bnB0ci90ZXN0X2R5bnB0cl9za2Jfbm9fYnVmZgorK2R5bnB0ci90 ZXN0X2R5bnB0cl9za2Jfc3RyY21wCisrZHlucHRyL3Rlc3RfZHlucHRyX3NrYl90cF9idGYKKytk eW5wdHIvdGVzdF9wcm9iZV9yZWFkX3VzZXJfZHlucHRyCisrZHlucHRyL3Rlc3RfcHJvYmVfcmVh ZF9rZXJuZWxfZHlucHRyCisrZHlucHRyL3Rlc3RfcHJvYmVfcmVhZF91c2VyX3N0cl9keW5wdHIK KytkeW5wdHIvdGVzdF9wcm9iZV9yZWFkX2tlcm5lbF9zdHJfZHlucHRyCisrZHlucHRyL3Rlc3Rf Y29weV9mcm9tX3VzZXJfZHlucHRyCisrZHlucHRyL3Rlc3RfY29weV9mcm9tX3VzZXJfc3RyX2R5 bnB0cgorK2R5bnB0ci90ZXN0X2NvcHlfZnJvbV91c2VyX3Rhc2tfZHlucHRyCisrZHlucHRyL3Rl c3RfY29weV9mcm9tX3VzZXJfdGFza19zdHJfZHlucHRyCisraXJxL2lycV9zbGVlcGFibGVfaGVs cGVyCisraXJxL2lycV9zbGVlcGFibGVfa2Z1bmMKKytpdGVycy9pdGVyX2Nzc190YXNrX2Zvcl9l YWNoX3NsZWVwCisraXRlcnMvaXRlcl9yZXRfcmN1X3Rlc3RfcHJvdGVjdGVkCisraXRlcnMvaXRl cl9yZXRfcmN1X3Rlc3RfdHlwZQorK2l0ZXJzL2l0ZXJfcmV0X3JjdV90ZXN0X3Byb3RlY3RlZF9u b3N0cnVjdAorK2l0ZXJzL2l0ZXJfcmV0X3JjdV90ZXN0X3R5cGVfbm9zdHJ1Y3QKKytpdGVycy90 YXNrCisraXRlcnMvY3NzCisraXRlcnMvaXRlcl90YXNrc193aXRob3V0X2xvY2sKKytpdGVycy9p dGVyX2Nzc193aXRob3V0X2xvY2sKKytpdGVycy9pdGVyX3Rhc2tzX2xvY2tfYW5kX3VubG9jawor K2l0ZXJzL2l0ZXJfY3NzX2xvY2tfYW5kX3VubG9jaworK21hcF9leGNsL21hcF9leGNsX2FsbG93 ZWQKKyttYXBfaW5fbWFwL3NsZWVwYWJsZV9hY2NfbWFwX2luX2FycmF5CisrbWFwX2luX21hcC9z bGVlcGFibGVfYWNjX21hcF9pbl9odGFiCisrbWVtX3Jkb25seV91bnRydXN0ZWQvaGVscGVyX3Bh cmFtX25vdF9vaworK21vZHVsZV9hdHRhY2gKKytwcmVlbXB0X2xvY2svcHJlZW1wdF9zbGVlcGFi bGVfaGVscGVyCisrcHJlZW1wdF9sb2NrL3ByZWVtcHRfc2xlZXBhYmxlX2tmdW5jCisrcmN1X3Jl YWRfbG9jay9zdWNjZXNzCisrcmN1X3JlYWRfbG9jay9yY3VwdHJfYWNxdWlyZQorK3JlYWRfdnN5 c2NhbGwKKytyZWZjb3VudGVkX2twdHIvcmJ0cmVlX3NsZWVwYWJsZV9yY3UKKytyZWZjb3VudGVk X2twdHIvcmJ0cmVlX3NsZWVwYWJsZV9yY3Vfbm9fZXhwbGljaXRfcmN1X2xvY2sKKytyZWZjb3Vu dGVkX2twdHJfZmFpbC9yYnRyZWVfZmFpbF9zbGVlcGFibGVfbG9ja19hY3Jvc3NfcmN1CisrdGVz dF9sc20vbHNtX2Jhc2ljCisrdmVyaWZpZXJfZ2xvYmFsX3N1YnByb2dzL2FyZ190YWdfY3R4X2Zt b2RfcmV0CisrCisra3Byb2JlX211bHRpX3Rlc3QvYXR0YWNoX292ZXJyaWRlICAgICAgICAgICAg ICAgICMgbmVlZHMgQ09ORklHX0JQRl9LUFJPQkVfT1ZFUlJJREUKKytsaWJicGZfcHJvYmVfcHJv Z190eXBlcy9CUEZfUFJPR19UWVBFX0xJUkNfTU9ERTIgIyBuZWVkcyBDT05GSUdfQlBGX0xJUkNf TU9ERTIKKyt0ZXN0X2JwZmZzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IyBuZWVkcyBDT05GSUdfQlBGX1BSRUxPQUQKKyt0dW5uZWwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIyBuZWVkcyBDT05GSUdfTkVUX0ZPVQorZGlmZiAtLWdpdCBh L3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9NYWtlZmlsZSBiL3Rvb2xzL3Rlc3Rpbmcvc2Vs ZnRlc3RzL2JwZi9NYWtlZmlsZQoraW5kZXggYjY0MmVlNDg5ZWE2Li43ZTMyMDQxODZhOGIgMTAw NjQ0CistLS0gYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvTWFrZWZpbGUKKysrKyBiL3Rv b2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9NYWtlZmlsZQorQEAgLTUzMiw3ICs1MzIsNyBAQCBM U0tFTFMgOj0gZmV4aXRfc2xlZXAuYyB0cmFjZV9wcmludGsuYyB0cmFjZV92cHJpbnRrLmMgbWFw X3B0cl9rZXJuLmMgCVwKKyBMU0tFTFNfU0lHTkVEIDo9IGZlbnRyeV90ZXN0LmMgZmV4aXRfdGVz dC5jIGF0b21pY3MuYworIAorICMgR2VuZXJhdGUgYm90aCBsaWdodCBza2VsZXRvbiBhbmQgbGli YnBmIHNrZWxldG9uIGZvciB0aGVzZQorLUxTS0VMU19FWFRSQSA6PSB0ZXN0X2tzeW1zX21vZHVs ZS5jIHRlc3Rfa3N5bXNfd2Vhay5jIGtmdW5jX2NhbGxfdGVzdC5jIFwKKytMU0tFTFNfRVhUUkEg Oj0gdGVzdF9rc3ltc19tb2R1bGUuYyBrZnVuY19jYWxsX3Rlc3QuYyBcCisgCWtmdW5jX2NhbGxf dGVzdF9zdWJwcm9nLmMKKyBTS0VMX0JMQUNLTElTVCArPSAkJChMU0tFTFMpICQkKExTS0VMU19T SUdORUQpCisgCitkaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2df dGVzdHMva3N5bXNfYnRmLmMgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ190ZXN0 cy9rc3ltc19idGYuYworaW5kZXggMWQ3YTJmMWUwNzMxLi5iMjJmM2E5Y2I4YjggMTAwNjQ0Cist LS0gYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ190ZXN0cy9rc3ltc19idGYuYwor KysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dfdGVzdHMva3N5bXNfYnRmLmMK K0BAIC03LDcgKzcsNiBAQAorICNpbmNsdWRlICJ0ZXN0X2tzeW1zX2J0Zi5za2VsLmgiCisgI2lu Y2x1ZGUgInRlc3Rfa3N5bXNfYnRmX251bGxfY2hlY2suc2tlbC5oIgorICNpbmNsdWRlICJ0ZXN0 X2tzeW1zX3dlYWsuc2tlbC5oIgorLSNpbmNsdWRlICJ0ZXN0X2tzeW1zX3dlYWsubHNrZWwuaCIK KyAjaW5jbHVkZSAidGVzdF9rc3ltc19idGZfd3JpdGVfY2hlY2suc2tlbC5oIgorIAorIHN0YXRp YyBpbnQgZHVyYXRpb247CitAQCAtMTExLDMzICsxMTAsNiBAQCBzdGF0aWMgdm9pZCB0ZXN0X3dl YWtfc3ltcyh2b2lkKQorIAl0ZXN0X2tzeW1zX3dlYWtfX2Rlc3Ryb3koc2tlbCk7CisgfQorIAor LXN0YXRpYyB2b2lkIHRlc3Rfd2Vha19zeW1zX2xza2VsKHZvaWQpCisteworLQlzdHJ1Y3QgdGVz dF9rc3ltc193ZWFrX2xza2VsICpza2VsOworLQlzdHJ1Y3QgdGVzdF9rc3ltc193ZWFrX2xza2Vs X19kYXRhICpkYXRhOworLQlpbnQgZXJyOworLQorLQlza2VsID0gdGVzdF9rc3ltc193ZWFrX2xz a2VsX19vcGVuX2FuZF9sb2FkKCk7CistCWlmICghQVNTRVJUX09LX1BUUihza2VsLCAidGVzdF9r c3ltc193ZWFrX2xza2VsX19vcGVuX2FuZF9sb2FkIikpCistCQlyZXR1cm47CistCistCWVyciA9 IHRlc3Rfa3N5bXNfd2Vha19sc2tlbF9fYXR0YWNoKHNrZWwpOworLQlpZiAoIUFTU0VSVF9PSyhl cnIsICJ0ZXN0X2tzeW1zX3dlYWtfbHNrZWxfX2F0dGFjaCIpKQorLQkJZ290byBjbGVhbnVwOwor LQorLQkvKiB0cmlnZ2VyIHRyYWNlcG9pbnQgKi8KKy0JdXNsZWVwKDEpOworLQorLQlkYXRhID0g c2tlbC0+ZGF0YTsKKy0JQVNTRVJUX0VRKGRhdGEtPm91dF9fZXhpc3RpbmdfdHlwZWQsIDAsICJl eGlzdGluZyB0eXBlZCBrc3ltIik7CistCUFTU0VSVF9ORVEoZGF0YS0+b3V0X19leGlzdGluZ190 eXBlbGVzcywgLTEsICJleGlzdGluZyB0eXBlbGVzcyBrc3ltIik7CistCUFTU0VSVF9FUShkYXRh LT5vdXRfX25vbl9leGlzdGVudF90eXBlbGVzcywgMCwgIm5vbmV4aXN0ZW50IHR5cGVsZXNzIGtz eW0iKTsKKy0JQVNTRVJUX0VRKGRhdGEtPm91dF9fbm9uX2V4aXN0ZW50X3R5cGVkLCAwLCAibm9u ZXhpc3RlbnQgdHlwZWQga3N5bSIpOworLQorLWNsZWFudXA6CistCXRlc3Rfa3N5bXNfd2Vha19s c2tlbF9fZGVzdHJveShza2VsKTsKKy19CistCisgc3RhdGljIHZvaWQgdGVzdF93cml0ZV9jaGVj ayhib29sIHRlc3RfaGFuZGxlcjEpCisgeworIAlzdHJ1Y3QgdGVzdF9rc3ltc19idGZfd3JpdGVf Y2hlY2sgKnNrZWw7CitAQCAtMTgwLDkgKzE1Miw2IEBAIHZvaWQgdGVzdF9rc3ltc19idGYodm9p ZCkKKyAJaWYgKHRlc3RfX3N0YXJ0X3N1YnRlc3QoIndlYWtfa3N5bXMiKSkKKyAJCXRlc3Rfd2Vh a19zeW1zKCk7CisgCistCWlmICh0ZXN0X19zdGFydF9zdWJ0ZXN0KCJ3ZWFrX2tzeW1zX2xza2Vs IikpCistCQl0ZXN0X3dlYWtfc3ltc19sc2tlbCgpOworLQorIAlpZiAodGVzdF9fc3RhcnRfc3Vi dGVzdCgid3JpdGVfY2hlY2sxIikpCisgCQl0ZXN0X3dyaXRlX2NoZWNrKHRydWUpOworIAoKZGlm ZiAtLWdpdCBhL3JwbWluc3BlY3QueWFtbCBiL3JwbWluc3BlY3QueWFtbAppbmRleCAwNzUzOWY0 Li5iMjkzMDg1IDEwMDY0NAotLS0gYS9ycG1pbnNwZWN0LnlhbWwKKysrIGIvcnBtaW5zcGVjdC55 YW1sCkBAIC0zOSw3ICszOSw3IEBAIGVtcHR5cnBtOgogcGF0Y2hlczoKICAgICBpZ25vcmVfbGlz dDoKICAgICAgICAgLSBsaW51eC1rZXJuZWwtdGVzdC5wYXRjaAotICAgICAgICAtIHBhdGNoLTcu Mi1yZWRoYXQucGF0Y2gKKyAgICAgICAgLSBwYXRjaC03LjMtcmVkaGF0LnBhdGNoCiAKIHJ1bnBh dGg6CiAgICAgaWdub3JlOgoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IDRh YjllYWIuLjY2YTM4MDQgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSwz ICsxLDMgQEAKLVNIQTUxMiAobGludXgtNy4yLnRhci54eikgPSBjZmE3OGZlNTA2YzIwY2VlZDFl NGY0YTAxYTkyZWZjMWEyYmM1OWQ1NTY3ZjhkNTUzNDg0M2QzZjFiZThjNmIwNmQwOWE5NDk2MDg4 OTk4MWJjMWE2NDVlMjU4MzY1OWNiYTBlZDRhMjRmZTZhYWEzZjdiYTZkODkzMjdkMGFjNwotU0hB NTEyIChrZXJuZWwtYWJpLXN0YWJsZWxpc3RzLTcuMi4wLnRhci54eikgPSAzODYzN2NlNzFlZmEz Y2NmYzE2YTRjZjJhMGU4ZGJhNTgyOTYwODg3NzVhYTA1ZTg1YzEwNjQ4YmVkZjBjY2IyMjg2Mjk0 MTg5MjgyM2FjNWQ1MGNjYzUxNmVmMjdlZTE4YTVkNmFlMWM0ZWMzNTdlMjE0ZjhjMDI2NmE1MWJk MQotU0hBNTEyIChrZXJuZWwta2FiaS1kdy03LjIuMC50YXIueHopID0gYTg2ZWYzN2I1MDdjMmZl ZjIyMGU0ZmQ5M2QzYWMxZjJhNTE3YzI1NmJhOWZhOTRlMDA2OTM3Y2QzY2RiMmQ5OWYzYjEyMmI0 YzZhNDhlMGM2YWI5ZmJhN2RjZWU0MDViZWM4NTFjNjk0MmZkMjVmOGZjYThjMjJkNTA0NTE2ZGMK K1NIQTUxMiAobGludXgtNy4yLTQzNy1nMGYyM2Q1NmYxN2ZkLnRhci54eikgPSBmZmMxMjA5MmY0 ODUyMjZhODVjNWVlMjM3ZmFiYzExNTY2YWMzNmRkMjBjYjA1NDFhYWQwZDk2ZjVlYTI1ODA4OWIw MjVmMmU0Y2UwOTBhODljYWU3ZGVkZjc3OTFiYWU3MGFhMzMzNTdjOGRhZTIxNWNhYjcwYjhhYTg3 Y2Y5MAorU0hBNTEyIChrZXJuZWwtYWJpLXN0YWJsZWxpc3RzLTcuMy4wLnRhci54eikgPSAzNWUy MjMwYjZjYmE4ODcwYjk5YjE3ZGI2NDNlZTNkYjIxNmMwODViOTNiZGYyYTRjNzQzM2JiODYyZjEx NjU3MDg2MzcyMDBmYzQ2MjFlYzEyOTlhMTg1YjAxNGM2YTM1ZjFkMjExM2ZmMmJlYzVlOWVlYWI4 MjYyNmJlYjFkNQorU0hBNTEyIChrZXJuZWwta2FiaS1kdy03LjMuMC50YXIueHopID0gNTdkYzJm OGVlZjE2NjAwMmZjN2M5MDkyM2Y4YjQ3ZmUxZGM5ZDEzMzVhNjljZjJlYTE1NWMwNTQ5NmMyMGY1 ZjZmOTJmMWNjZDViYzMwODgwMzNmYTc2ZDI0ZDI1NmRiNmMzNmI2ZGU5MmI2YzRhZTVkMDIyYzgy NzQyNzc1NzgK