ZGlmZiAtLWdpdCBhL0NPTlRSSUJVVE9SUy5ta2RuIGIvQ09OVFJJQlVUT1JTLm1rZG4KaW5kZXggYTFlMjJhNy4uZWVkMWQ2MiAxMDA2NDQKLS0tIGEvQ09OVFJJQlVUT1JTLm1rZG4KKysrIGIvQ09OVFJJQlVUT1JTLm1rZG4KQEAgLTIzLDcgKzIzLDcgQEAKICogX19IVEMgT25lIChTcHJpbnQpOl9fIGt1c2hkZWNrLCB0b2FzdGNmaAogKiBfX0hUQyBPbmUgKFZlcml6b24pOl9fIGZseWhhbGYyMDUsIG1kbW93ZXIKICogX19IVEMgT25lIFM6X18gaW50ZXJ2aWdpbCwgeGtvbm5pCi0qIF9fSFRDIE9uZSBYOl9fIGdvcmJpMTYsIG1kZWVqYXksIHRiYWxkZW4sIFRo9m15CisqIF9fSFRDIE9uZSBYOl9fIGdvcmJpMTYsIG1kZWVqYXksIHRiYWxkZW4sIFRow7ZteQogKiBfX0hUQyBPbmUgWCs6X18gTGxvaXIsIHRvbWJyaWRlbgogKiBfX0hUQyBPbmUgWEw6X18gaDhyaWZ0LCBpbnRlcnZpZ2lsCiAqIF9fTEcgT3B0aW11cyBMVEUgKFA5MzApIC8gTEcgTml0cm8gSEQge1A5MzUpOl9fIGFyY2VlCkBAIC0xMTIsMjcgKzExMiw1NCBAQAogCiBUcmFuc2xhdG9yczoKIC0tLS0tLS0tLS0tLQotKiBfX0FmcmlrYWFuczpfXyBDb3JyaWUgTWV5ZXIsIERhdmlkIHZhbiBUb25kZXIKLSogX19DYXRhbGFuOl9fIEFybmF1IExsb3ZldCBWaWRhbAotKiBfX0NoaW5lc2UgKFNpbXBsaWZpZWQpOl9fIEFuZHJldyBKaWFuZywgSm9obiBIc2luZywgRW5nbGUgTWFycwotKiBfX0NoaW5lc2UgKFRyYWRpdGlvbmFsKTpfXyBMaSBDaGkgVHVuZywgRnUtQ2h1biBIc3UKLSogX19DemVjaDpfXyBPbmRyZWogWmltYSwgUmFkb3ZhbiBLZXBhaywgUGF2ZWwgS3VjZXJhLCBKb3prYSBKb3ppbiwgSmlyaSBTaWx2YXJpY2gsIFZhY2xhdiBNb3VjaGEKLSogX19EYW5pc2g6X18gSmFjb2IgT3ZlcmdhYXJkIE1hZHNlbiwgTW9ydGVuIEr4cmdlbnNlbiwgSGVubmluZyBOaWVsc2VuIEx1bmQsIE1pa2FlbCBKZXBzZW4KLSogX19EdXRjaDpfXyBNYXJjbyBCcm9oZXQsIEthc3BlciBIZXR0aW5nYSwgRWRkeSBXaXRrYW1wCi0qIF9fRmlubmlzaDpfXyBOaWtvIEtvaXZ1Ci0qIF9fRnJlbmNoOl9fIERlbHBoaW4gUEVURVIsIEVyaWMgTW91cm91Z2FuZHksIEzpbyBDb2xvbWJhcm8sIEZsb3JlbnQgSW1mbG9mbG8sIFRhbmd1eSBQcnV2b3QsIE1hdHRoaWFzIEJvc2MKLSogX19HZXJtYW46X18gS2ltIEzqLCBKYWNvYiBN/GxsZXIsIENocmlzdG9waCBRdWl0ZXIsIE1hcmt1cyBIb2ViZXIsIERhbm55IEJhdW1hbm4KLSogX19HcmVlazpfXyBNaWNoYWVsIEJlc3RhcywgVmFzaWxpcyBBa3JpdGFzCi0qIF9fSHVuZ2FyaWFuOl9fIFRhbeFzIFTzdGgsIEThdmlkIEzhc3ps8ywgROFuaWVsIEJ1Z2EKLSogX19JdGFsaWFuOl9fIEZyYW5jZXNjbyBGb3Jlc3RhLCBNYXVybyBCYXp6YW5vCi0qIF9fSmFwYW5lc2U6X18gVGFrdW8gS2l0YW1lLCBUYWljaGkgTmlzaGltdXJhCi0qIF9fTm9yd2VnaWFuOl9fIE9kaW4gVWdlZGFsLCBBcm5lIENvdWNoZXJvbgotKiBfX1BvbGlzaDpfXyBUb21hc3ogUG9waWVsYXJjenlrIGMucy4KLSogX19Qb3J0dWd1ZXNlIChCcmF6aWxpYW4pOl9fIEd1c3Rhdm8gUm9zYSwgUGVkcm8gQ2FybmVpcm8sIEVtZXJzb24gUGludGVyCi0qIF9fUnVzc2lhbjpfXyBQYXZlbCBWb2xrb3YsIFZsYWRpc2xhdiBLb2xkb2Jza2l5LCBWbGFkaW1pciBCZWxrb3YKLSogX19TbG92YWs6X18gRHVzYW4gS2F6aWsKLSogX19TcGFuaXNoOl9fIEpvcmdlIFJ1ZXNnYSwgTG9yZW56byBNLiBDYXN0YfFvCi0qIF9fU3dlZGlzaDpfXyBTaW1vbiBC5GNrLCBUZWQgTHVuZHdhbGwsIEVzYSBMYXVra2FuZW4sIEJq9nJuIEx1bmTpbgorKiBfX0FmcmlrYWFuczpfXyBEYXZpZCB2YW4gVG9uZGVyIChEdlRvbmRlciksIENvcnJpZSBNZXllciAoaXNpbW9iaWxlKQorKiBfX0FyYWJpYzpfXyBVbWFyIE9tYXIgKHVvbWFyOCkKKyogX19Bc3R1cmlhbjpfXyBlc2JhcmR1IChlc2JhcmR1KSwgaXZhcmVsYSAobWFsZGl0b2FzdHVyKSwgWGFuZHJ1IE1hcnRpbm8gUnV6IChYYW5kcnUpLCBYdWFjdSBTYXR1cmlvIChYdWFjdSkKKyogX19DYXRhbGFuOl9fIEFybmF1IChBcm5hdSksIFBhdSBHYWxpbmRvIChQYXVfR2FsaW5kbykKKyogX19DaGluZXNlIFNpbXBsaWZpZWQ6X18gTWF0dGhldyBIdW1waHJleSAoNzc1NDA1OTg0KSwgQ29udGFjdGZyb250IChDb250YWN0ZnJvbnQpLCBFYXNlbWFuIFdhbmcgKGVhc2VtYW45KSwgaml2ZWtpbmcgKGppdmVraW5nKSwgWXVuIExpdSAobGl1eXVuOTcpLCBIZXhjaGFpbiBUb25nIChyaWNoYXJkMDA1MyksIFJ5YW4gQ2hhbiAoc21hcnRyeWFuKSwgVGhvbWFzIFdhbmcgKHRzMDUxNikKKyogX19DaGluZXNlIFRyYWRpdGlvbmFsOl9fIEhzaWFuZyBKdW5nLCBDSEVORyAoSEpDSEVORyksIEtlbHZpbiBDaGVvbmcgKGtlbHZpbmNoZW9uZyksIEJpbmctSHVhIFdhbmcgKGxvdWlzd3BmKSwgbnBlczg3MTg0IChucGVzODcxODQpLCBSeWFuIENoYW4gKHNtYXJ0cnlhbikKKyogX19DaGluZXNlIFRyYWRpdGlvbmFsLCBIb25nIEtvbmc6X18gS2VsdmluIENoZW9uZyAoa2VsdmluY2hlb25nKSwgUnlhbiBDaGFuIChzbWFydHJ5YW4pLCBMaSBDaGkgVHVuZyAodG9ueWxpMTM1NykKKyogX19Dcm9hdGlhbjpfXyBEYXZpZCBCb2NhIChkYXZpZGJvY2EpLCBtYXJrYW4gKG1hcmthbiksIFJveCAoUm94KSwgSm9zaXAgVm9sZiAoV3VrKQorKiBfX0N6ZWNoOl9fIFJhZG92YW4gS2Vww6FrIChiY2twKSwgxaB0xJtww6FuIERhbGVja8O9IChkYWxlY2t5c3RlcGFuKSwgZW5neSAoZW5neSksIEtlbHRlayAoS2VsdGVrKSwgU2NBclNWSyAoU2NBclNWSyksIFNub29wMDUgKFNub29wMDUpCisqIF9fRGFuaXNoOl9fIE1vcnRlbiBKw7hyZ2Vuc2VuIChGaWRvYmxlKSwgSmFjb2JfREsgKEphY29iX0RLKSwgT2xlIEluZ2VtYW4gQ2hyaXN0ZW5zZW4gKE9JQ2hyaXN0ZW5zZW4pCisqIF9fRHV0Y2g6X18gRWRkeSBXaXRrYW1wIChlZGR5d2l0a2FtcCksIEZyYW5rIEJhZXRlbiAoZnJhbmtiYWV0ZW4pLCBUb20gSGVpc3RlcmthbXAgKEhhcHB5RmxvdyksIE1hcnRpbiBDb3Vsb24gKG1hcnRpbnVzYmUpLCBUaW1vIFZpdmVlbiAoTmFkZXJtYW5lKSwgcmF5MTYxOCAocmF5MTYxOCksIE1hcmNvIEJyb2hldCAodGhlcmJvbSkKKyogX19Fc3RvbmlhbjpfXyBSdWRvbGYgVGFtbWVraXZpIChydGFtbWVraXZpKQorKiBfX0Zpbm5pc2g6X18gRWVybyBIeXJza3kgKEVuZXJneVNuYWlsKSwgSmFuaSBLaW5udW5lbiAoamtpbm51bmVuKSwgTmlrbyBLb2l2dSAobmlrbzBvKSwgU2FzdSBMZWh0b25lbiAoemF6emEpCisqIF9fRnJlbmNoOl9fIERlbFBFVEVSIChEZWxQRVRFUiksIGh1bXBmIChodW1wZiksIEp1bGllbiBTdGVwaGFuIChqdWxpZW5zdGVwaGFuMjkpLCBsYWRkYXNzIChsYWRkYXNzKSwgLi4uLiAobGVtYWNoaW5iaWR1bGUpLCBtYXRoIE1hdG11dGFudCAobWF0bXV0YW50KSwgTWlja3MyOSAoTWlja3MyOSksIG9wZW5naWxsb3UgKG9wZW5naWxsb3UpLCBBbGV4YW5kcmUgQmVydHJhbmQgKHRyYW5kYmVydCkKKyogX19HYWxpY2lhbjpfXyBEYW5pZWwgKGNhbnU3KSwgSXNhYWMgw4FsdmFyZXogVmVpZ2EgKEVyaXRocnltKQorKiBfX0dlb3JnaWFuOl9fIEFsZXhhbmRlciAoYWxleGFuZGVyXzkpCisqIF9fR2VybWFuOl9fIFNhc2NoYSBTY2hyb2VkZXIgKGMxcGg0KSwgS2ltIExlIChlbGVrdHJvc2NobW9jazc4KSwgamFja211OTUgKGphY2ttdTk1KSwgS2lsaWFuIHZvbiBQZmx1Z2sgKGtpbGlhbnZvbnBmbHVnayksIEtpbG93YXR0LlcgKGtpbG93YXR0KSwgQmVuamFtaW4gSHVzY2hsZSAoa29sc21zKSwgRGFubnkgQmF1bWFubiAobWFuaWFjMTAzKSwgTWFyZG9uIChtYXJrdXNtZW56ZWwpLCBtYXhlZSAobWF4ZWUpLCBtaWNoZWxzYmVyZyAobWljaGVsc2JlcmcpLCBSb21hbiBFdHRsaW5nZXIgKHJvbWFuZXR0OTgpLCBTdGVmYW4gTy4gKHN0ZWZhbmFvKSwgVGhvbWFzIFJlaW5oYXJkdCAodGFycmVhcyksIHVucHVibGlzaGVkICh1bnB1Ymxpc2hlZCksIFlhbm5payAoeWFubmlrcykKKyogX19HcmVlazpfXyBWYXNpbGlzIEFrcml0YXMgKGJpbGxhazc1KSwgTWljaGFlbCBCZXN0YXMgKG1pa2Vpb2FubmluYSkKKyogX19IZWJyZXc6X18gQXJ0aHVyIFphbWFyaW4gKGFydGh1cnphbSksIGV2eWF0YXJrMiAoZXZ5YXRhcmsyKSwgTXJfR3V5IChNcl9HdXkpLCBPcmVuIENvaGVuIChvcmVuYzE3KSwgc2FnaTIzMjEyMyAoc2FnaTIzMjEyMykKKyogX19IaW5kaTpfXyBjMGQzcmlwcDNyIChjMGQzcmlwcDNyKSwgU29sb21vbiBTdW5kZXIgKHNvbG9tb25zdW5kZXIpCisqIF9fSHVuZ2FyaWFuOl9fIELDoWxpbnQgQ3pvYm9yIChiYWxpbnQpLCBCdWdhIETDoW5pZWwgKEJ1Z2FEw6FuaWVsKSwgZmlzY2hlcmFuZHJpcyAoZmlzY2hlcmFuZHJpcyksIGxhemFqbmQgKGxhemFqbmQpLCBUYW3DoXMgVMOzdGggKHRvdGh0YW1hc3N5bWFuKQorKiBfX0luZG9uZXNpYW46X18gVmlja3kgU29meWFuIChBcmNoOSksIGZhbWloeXlwaWEgKGZhbWloeXlwaWEpLCBJbGhhbSBJYnJhaGltIChpaWlicmFoaW04OSksIFJ1c3dhbiBFZmVuZGkgKFJ1c3dhbld1NyksIHRvaGVuayAodG9oZW5rKQorKiBfX0l0YWxpYW46X18gQWxlc3NhbmRybyBQcmV0aSAoYWxlc3NhbmRyb3ByZXRpKSwgRnJhbmNlc2NvIEZvcmVzdGEgKGZyYW5jZXNjb2ZvcmVzdGEpLCBMb3JlbnpvIEZhY2NpbmkgKGxvOTcpLCByaGVlemUgKHJoZWV6ZSksIFZhbGRldmllcyAoVmFsZGV2aWVzKQorKiBfX0phcGFuZXNlOl9fIEJsYWNrIFppZ29uZyAoYmxhY2t6aWdvbmcpLCBqaXZla2luZyAoaml2ZWtpbmcpLCDjgYrjgZ/jgaPjgY8gKG90YWNrKSwgc3RtYXkzMCAoc3RtYXkzMCkKKyogX19Lb3JlYW46X18g7J207Iq566CsICh0b3kwNjA1KQorKiBfX0t1cmRpc2g6X18gZmFsYWggKER5bGFuMjc4NSkKKyogX19MYXR2aWFuOl9fIE3EgXJpcyBSxJNkbWFuaXMgKG1hYXJpcykKKyogX19MaXRodWFuaWFuOl9fIExpdWRhcyBBbGnFoWF1c2thcyAobGl1ZGFzLmFsaXNhdXNrYXMpLCBFZG11bmRhcyBQbGVudGF1c2thcyAocGxlbnRhdXNrYXMxOTkyKSwgSGFyZExpZ2h0IChwb2xpenBseiksIFNhdWxpdXMgVnnFoW5pYXVza2FzIChTYXVsaXVzVnkpCisqIF9fTHV4ZW1ib3VyZ2lzaDpfXyBNaWNoZWwgV2VpbWVyc2tpcmNoIChtaWNoZWxfd2VpbWVyc2tpcmNoKSwgc291ZWQwMzEgKHNvdWVkMDMxKQorKiBfX01hbGF5Ol9fIHRhbmFrd2FndSAodGFuYWt3YWd1KQorKiBfX05vcndlZ2lhbiBCb2ttYWw6X18gVmVnYXJkIEZsYWRieSAoQWxscmFtKSwgU3RlbiBFaWtyZW0gKFN0b3Jlc3RlaW5lbikKKyogX19QZXJzaWFuOl9fIEFsaSBOaWtpIChhbGluaWspLCBNZWhkaSBIb3NzZWluWmFkZSAoQXJzaGVuKSAoQXJzaGVuLTIwMTQpLCBZYXNlciBSYWphYmkgKHlyYWphYmkpCisqIF9fUG9saXNoOl9fIERhd2lkIChkYXdpZG9ocyksIEthbWlsIEphcm9zxYJhdyAoZGV2bG96MTk5NiksIE1pY2hhxYIgR8SFdGtvd3NraSAoSXJldU4pLCBBbmRyemVqIFJlc3NlbCAoamVyZWtzZWwpLCBNaWNoYcWCIEthbWllxYQgKGthbXlrb3dza3kpLCBsb3pvaGN1bSBNIChsb3pvaGN1bSksIFRvbWFzeiBQb3BpZWxhcmN6eWsgKHBvcGllbGFyY3p5a3RvbWFzeiksIE1pY2hhxYIgSmFrdWJvd3NraSAocmV2YW5taikKKyogX19Qb3J0dWd1ZXNlOl9fIEpvw6NvIFBlZHJvIEx1w61zIChqb2FvcGx1aXMpLCBTZXJnaW8gQm9yZ2VzIChzZXJnaW9ib3JnZXM5OSksIEFuZHLDqSBQaW5lbGEgKHNoZWZmem9yKSwgVGVyY2lvIENhcnZhbGhvICh0ZXJjaW9jKQorKiBfX1BvcnR1Z3Vlc2UsIEJyYXppbGlhbjpfXyBDYXJsb3MgSGVucmlxdWUgQnJlbmRsZXIgQ2FicmFsIChjYXJsb3NoYmNhYnJhbCksIEdhZmFuaG90eiAoR2FmYW5ob3R6KSwgR3VzdGF2byBSb3NhIChndXN0YXZvZ3luKSwgVGVyY2lvIENhcnZhbGhvICh0ZXJjaW9jKQorKiBfX1JvbWFuaWFuOl9fIGFwb2xvZG9yIChhcG9sb2RvciksIGF6enVyZXV4IChhenp1cmV1eCksIE1hcmlhbi1NaW5hIE1paGFpIChiYm95bGFsdSksIG1paGFpdGF1cyAobWloYWl0YXVzKQorKiBfX1J1c3NpYW46X18g0JTQuNC80LAg0JDQvdGC0LjQv9C+0LIgKGJvbm55MTk5NSksIEFsZXhleSBLdXpuZXRzb3YgKGVlZXBjMTAxNnApLCBNcllhZHJvIChNcllhZHJvKSwgVmxhZGlzbGF2IEtvbGRvYnNraXkgKE5ldmVyR29uZSksIFNub29wMDUgKFNub29wMDUpCisqIF9fU2VyYmlhbiAoQ3lyaWxsaWMpOl9fIERyYWdhbiBNaWxlbmtvdmljIChnYWd5MTg3KSwgU2F2YSBNaWthbGHEjWtpIChtaWthbGFja2lzKSwg0JTRgNCw0LPQsNC9IChXRDQwKQorKiBfX1NpbmhhbGE6X18gUmFuYW5nYSBTdXJhd2VlcmEgKHJhbmFuZ2EpCisqIF9fU2xvdmFrOl9fIE1hcnRpbiAobWF0byksIEJvaHVzbGF2IE9yxaF1bGEgKG9yc3VsYWIpLCBQZXRlciBNYWzDrWsgKFBldGVyTSksIHB5bGVyIChweWxlciksIFNub29wMDUgKFNub29wMDUpCisqIF9fU3BhbmlzaDpfXyBJc2FhYyDDgWx2YXJleiBWZWlnYSAoRXJpdGhyeW0pLCBKb3JnZSBSdWVzZ2EgKGpydWVzZ2EpLCBMb3JlbnpvIE0gKExvcmVuem9fTSksIGx1Y2hvbWFjZWRvOTIgKEx1Y2hvTWFjZWRvKSwgUGF1IEdhbGluZG8gKFBhdV9HYWxpbmRvKQorKiBfX1N3ZWRpc2g6X18gU2ltb24gQsOkY2sgKGJhY2tzaW1vbiksIGVsZWxpbnV4IChlbGVsaW51eCksIFNpbW9uIERhbmllbHNzb24gKHNhZF84OCksIFRlZCBMdW5kd2FsbCAoVGVkTHVuZHdhbGwpCisqIF9fVGFtaWw6X18gS2lzaG9yZSBTaGVpayBBaGFtZWQgKGtpc2hvcmVpbm1lKSwgU29sb21vbiBTdW5kZXIgKHNvbG9tb25zdW5kZXIpLCBTdGFycyBTb2Z0IChzdGFyc3NvZnQpLCDgroXgrrDgr4HgrqPgr40g4K6V4K+B4K6u4K6+4K6w4K+NIC0gQXJ1biBLdW1hciAodGhhbmdhbWFuaS1hcnVuKQorKiBfX1RoYWk6X18gcHVyZWV4ZSAocHVyZWV4ZSkKKyogX19UdXJraXNoOl9fIEFyaWYgR8OcTEVSIChBckYpLCBNZXN1dCDDlnp0w7xyayAoZG9rdG9ybWVzdXQpLCBNdXJhdCBLT8WeQUsgKG11cmF0a29zYWspLCBva2lyYXQgKG9raXJhdCksIMWeZW5vbCAoc2Vub2xla2VyKQorKiBfX1VrcmFpbmlhbjpfXyBBbmRyaXkgUG96bmFraG92c2t5eSAoQW5kcnVsa28pLCBOYXphciBTb2tvbG92c2t5IChuYXphcl9zb2tvbG92c2t5KSwgTWFrcyAocHJvYmlsKSwgeGFsaWNoICh4YWxpY2gpCisqIF9fVXlnaHVyOl9fIGppdmVraW5nIChqaXZla2luZykKKyogX19WaWV0bmFtZXNlOl9fIELhuqNvIFF1w6JuIChxdWFuMjIxMjk1KSwgVHJpZXQgQnVpIE1pbmggKHgzY2FmZSkKIAogR3JhcGhpY3MgYW5kIEFzc2V0czoKIC0tLS0tLS0tLS0tLS0tLS0tLS0tCg==